List of usage examples for org.eclipse.jface.viewers ViewerCell setForeground
public void setForeground(Color foreground)
From source file:org.eclipselabs.e4.tapiji.translator.ui.treeviewer.provider.TreeViewerLabelProvider.java
License:Open Source License
private void searchStyle(final ViewerCell cell, final Term term, final int columnIndex) { if (isMatchingToPattern(term, columnIndex)) { final List<FilterRegion> regions = ((FilterInfo) term.getInfo()) .getFoundInTranslationRanges(getColumnLocale(columnIndex)); StyleRange style;/*from w w w . ja v a 2 s. co m*/ for (final FilterRegion reg : regions) { style = new StyleRange(reg.getOffset(), reg.getLength(), COLOR_BLACK, COLOR_INFO, SWT.BOLD); STYLE_RANGES.add(style); } cell.setStyleRanges(STYLE_RANGES.toArray(new StyleRange[STYLE_RANGES.size()])); } else { cell.setForeground(COLOR_BLACK); } }
From source file:org.eclipsetrader.ui.internal.trading.portfolio.GainLabelProvider.java
License:Open Source License
@Override public void update(ViewerCell cell) { if (!(cell.getElement() instanceof IViewItem)) { return;/*ww w . j a va 2s .c o m*/ } GainViewItemVisitor visitor = new GainViewItemVisitor(); ((IViewItem) cell.getElement()).accept(visitor); double value = visitor.getValue(); double percentage = visitor.getPercentage(); cell.setText((value > 0 ? "+" : "") + formatter.format(value) + " (" + (value > 0 ? "+" : "") + percentageFormatter.format(percentage) + "%)"); cell.setForeground(value != 0 ? value > 0 ? positiveColor : negativeColor : null); if (cell.getElement() instanceof BrokerElement) { cell.setFont(font); } }
From source file:org.eclipsetrader.ui.internal.views.ViewItemLabelProvider.java
License:Open Source License
@Override public void update(ViewerCell cell) { IViewItem element = (IViewItem) cell.getElement(); IAdaptable[] values = element.getValues(); if (values != null && cell.getColumnIndex() >= 0 && cell.getColumnIndex() < values.length) { if (values[cell.getColumnIndex()] != null) { String s = (String) values[cell.getColumnIndex()].getAdapter(String.class); if (s != null && !cell.getText().equals(s)) { cell.setText(s);/*ww w . j a va 2 s . c o m*/ } Image i = (Image) values[cell.getColumnIndex()].getAdapter(Image.class); if (i != cell.getImage()) { cell.setImage(i); } Color color = (Color) values[cell.getColumnIndex()].getAdapter(Color.class); if (color != null) { cell.setForeground(color); } } else { if (!cell.getText().equals("")) { cell.setText(""); } if (null != cell.getImage()) { cell.setImage(null); } cell.setForeground(null); } } else { if (!cell.getText().equals("")) { cell.setText(""); } if (null != cell.getImage()) { cell.setImage(null); } cell.setForeground(null); } updateBackground(cell); }
From source file:org.eclipsetrader.ui.internal.views.WatchListViewCellLabelProvider.java
License:Open Source License
@Override public void update(ViewerCell cell) { WatchListViewItem element = (WatchListViewItem) cell.getElement(); IAdaptable adaptableValue = (IAdaptable) attributeMaps[0].get(element); WatchListViewCellAttribute attribute = (WatchListViewCellAttribute) attributeMaps[1].get(element); if (adaptableValue == null) { return;//from w w w.jav a 2 s. co m } if (!objectEquals(adaptableValue, valueMap.get(element))) { String text = (String) adaptableValue.getAdapter(String.class); if (text == null) { text = ""; //$NON-NLS-1$ } if (!text.equals(cell.getText())) { cell.setText(text); } cell.setForeground((Color) adaptableValue.getAdapter(Color.class)); cell.setFont((Font) adaptableValue.getAdapter(Font.class)); ImageData imageData = (ImageData) adaptableValue.getAdapter(ImageData.class); if (imageData != null) { imageData.transparentPixel = imageData.palette.getPixel(new RGB(255, 255, 255)); Image newImage = new Image(Display.getDefault(), imageData); Image oldImage = cell.getImage(); cell.setImage(newImage); if (oldImage != null) { oldImage.dispose(); } } else { Image image = (Image) adaptableValue.getAdapter(Image.class); cell.setImage(image != null && image.isDisposed() ? null : image); } valueMap.put(element, adaptableValue); } if (!objectEquals(attribute, decoratorMap.get(element))) { if (ownerDrawEnabled) { cell.setBackground(null); Rectangle rect = cell.getBounds(); cell.getControl().redraw(rect.x, rect.y, rect.width, rect.height, false); } else { if (attribute == null) { cell.setBackground(null); } else { TableItem tableItem = (TableItem) cell.getViewerRow().getItem(); int rowIndex = tableItem.getParent().indexOf(tableItem); if ((rowIndex & 1) != 0) { if (attribute.oddBackground == null || !attribute.oddBackground.isDisposed()) { cell.setBackground(attribute.oddBackground); } } else { if (attribute.evenBackground == null || !attribute.evenBackground.isDisposed()) { cell.setBackground(attribute.evenBackground); } } } } decoratorMap.put(element, attribute); } }
From source file:org.eclipsetrader.ui.trading.OrdersLabelProviderWrapper.java
License:Open Source License
@Override public void update(ViewerCell cell) { Object element = cell.getElement(); cell.setText(labelProvider.getText(element)); cell.setImage(labelProvider.getImage(element)); cell.setBackground(labelProvider.getBackground(element)); Color color = labelProvider.getForeground(element); cell.setForeground(color != null ? color : getForeground(element)); cell.setFont(labelProvider.getFont(element)); }
From source file:org.emftrace.quarc.ui.views.PropertiesView.java
License:Open Source License
/** * fills the TableViewer with ratings// w w w.j ava 2s. com * @param tableViewer a TableViewer * @param builder the AbstractElementGraphBuilder * @param builder the AbstractElementGraphBuilder * @param heatmapCheckbox the heatmap checkbox * @param symbolsCheckbox the symbols checkbox * @grlSymbolsCheckbox the GRL symbols checkbox * @param attributeExplorerCheckbox the attribute explorer checkbox * @param thresholdSpinner the threshold Spinner * @param thresholdScale the threshold Scale * @param thresholdCombo the threshold Combo * @param showRatingsToGoals show Ratings to Goals (true) of Priniplies (false) */ private void fillTable(final TableViewer tableViewer, final AbstractElementGraphBuilder builder, final Button heatmapCheckbox, final Button symbolsCheckbox, final Button grlSymbolsCheckbox, final Button attributeExplorerCheckbox, final Spinner thresholdSpinner, final Scale thresholdScale, final Combo thresholdCombo, final boolean showRatingsToGoals) { TableViewerColumn indexColumn = new TableViewerColumn(tableViewer, SWT.NONE); TableViewerColumn nameColumn = new TableViewerColumn(tableViewer, SWT.NONE); indexColumn.getColumn().setText("rank"); indexColumn.getColumn().setWidth(75); indexColumn.getColumn().setToolTipText("the rank of the alternative element"); nameColumn.getColumn().setText("name"); nameColumn.getColumn().setWidth(250); nameColumn.getColumn().setToolTipText("the name of the alternative element"); heatmapCheckbox.addSelectionListener(new SelectionListener() { @Override public void widgetSelected(SelectionEvent e) { tableViewer.refresh(); } @Override public void widgetDefaultSelected(SelectionEvent e) { } }); thresholdSpinner.addSelectionListener(new SelectionListener() { @Override public void widgetSelected(SelectionEvent e) { tableViewer.refresh(); } @Override public void widgetDefaultSelected(SelectionEvent e) { } }); thresholdScale.addSelectionListener(new SelectionListener() { @Override public void widgetSelected(SelectionEvent e) { tableViewer.refresh(); } @Override public void widgetDefaultSelected(SelectionEvent e) { } }); attributeExplorerCheckbox.addSelectionListener(new SelectionListener() { @Override public void widgetSelected(SelectionEvent e) { tableViewer.refresh(); } @Override public void widgetDefaultSelected(SelectionEvent e) { } }); thresholdCombo.addSelectionListener(new SelectionListener() { @Override public void widgetSelected(SelectionEvent e) { tableViewer.refresh(); } @Override public void widgetDefaultSelected(SelectionEvent e) { } }); symbolsCheckbox.addSelectionListener(new SelectionListener() { @Override public void widgetSelected(SelectionEvent e) { tableViewer.refresh(); } @Override public void widgetDefaultSelected(SelectionEvent e) { } }); grlSymbolsCheckbox.addSelectionListener(new SelectionListener() { @Override public void widgetSelected(SelectionEvent e) { tableViewer.refresh(); } @Override public void widgetDefaultSelected(SelectionEvent e) { } }); nameColumn.setLabelProvider(new CellLabelProvider() { public void update(ViewerCell cell) { cell.setText(((Element) cell.getElement()).getName()); } }); indexColumn.setLabelProvider(new CellLabelProvider() { public void update(ViewerCell cell) { cell.setText(String.valueOf(tableViewer.getTable().indexOf((TableItem) cell.getItem()) + 1)); // +1 due to index // starts with 0 } }); new ColumnViewerSorter(tableViewer, nameColumn) { protected int doCompare(Viewer viewer, Object e1, Object e2) { return ((Element) e1).getName().compareTo(((Element) e2).getName()); } }; final HashMap<TableColumn, Element> elementColumnMap = new HashMap<TableColumn, Element>(); /////add an ExpandListener to all nodes final IExpandListener expandListener = new IExpandListener() { @Override public void expanded() { tableViewer.refresh(); } @Override public void collapsed() { tableViewer.refresh(); } }; for (Object node : builder.getZestGraph().getNodes()) { if (node instanceof GSSElementGraphNode) { ((GSSElementGraphNode) node).getElementFigure().addExpandListener(expandListener); } } /////remove the ExpandListener after dispose tableViewer.getTable().addDisposeListener(new DisposeListener() { @Override public void widgetDisposed(DisposeEvent e) { for (Object node : builder.getZestGraph().getNodes()) { if (node instanceof GSSElementGraphNode) { ((GSSElementGraphNode) node).getElementFigure().removeExpandListener(expandListener); } } } }); //the content provider ///show elements of visible nodes only tableViewer.setContentProvider(new ArrayContentProvider() { @Override public Object[] getElements(Object inputElement) { @SuppressWarnings("unchecked") //TODO suppresswarning! List<Element> inputList = (List<Element>) inputElement; List<Element> result = new ArrayList<Element>(); for (Element e : inputList) { if (builder.getNodeForElement(e).isVisbile()) result.add(e); } Element[] output = new Element[result.size()]; int i = 0; for (Element e : result) { output[i] = e; i++; } return output; } }); final List<Element> leafElements = new ArrayList<Element>(); final List<Element> markedLeafElements = new ArrayList<Element>(); boolean hasMarkedElements = !builder.getSelectedElements().isEmpty(); if (showRatingsToGoals) { leafElements.addAll(builder.getCacheManager().getLeafApplicableElementElements(GSSLayer.layer1)); if (hasMarkedElements) markedLeafElements.addAll(builder.getMarkedLeafGoals()); } else { leafElements.addAll(builder.getCacheManager().getLeafApplicableElementElements(GSSLayer.layer3)); if (hasMarkedElements) markedLeafElements.addAll(builder.getMarkedLeafPrinciples()); } boolean weightsIncluded = false; if (showRatingsToGoals) weightsIncluded = !builder.getCacheManager().getSelectedGoals().isEmpty(); else weightsIncluded = !builder.getCacheManager().getSelectedPrinciples().isEmpty(); for (final Object leafElement : leafElements) { // if (leafElement instanceof GSS.Goal) { if (weightsIncluded) { final TableViewerColumn weightedImpactViewerColumn = new TableViewerColumn(tableViewer, SWT.NONE); elementColumnMap.put(weightedImpactViewerColumn.getColumn(), (Element) leafElement); Float priority = null; if (leafElement instanceof Goal) { priority = builder.getCacheManager().getSelectedGoalPriority((Goal) leafElement); } else if (leafElement instanceof Principle) { priority = builder.getCacheManager().getSelectedPrinciplePriority((Principle) leafElement); } if (priority == null) priority = 0.0f; weightedImpactViewerColumn.getColumn() .setText(String.format("%s (%.2f)", ((Element) leafElement).getName(), priority)); weightedImpactViewerColumn.getColumn() .setToolTipText("the weighted rating to " + ((Element) leafElement).getName()); weightedImpactViewerColumn.getColumn().setWidth(100); weightedImpactViewerColumn.getColumn().setMoveable(true); weightedImpactViewerColumn.getColumn().setResizable(true); new ColumnViewerSorter(tableViewer, weightedImpactViewerColumn) { protected int doCompare(Viewer viewer, Object e1, Object e2) { Element element = elementColumnMap.get(tableViewer.getTable().getSortColumn()); Float v1 = calcWeightedImpact(builder, element, (Element) e1); Float v2 = calcWeightedImpact(builder, element, (Element) e2); return v1.compareTo(v2); } }; weightedImpactViewerColumn.setLabelProvider(new CellLabelProvider() { public void update(ViewerCell cell) { String weightString = calcWeightedImpactString(builder, (Element) leafElement, (Element) cell.getElement()); float impact = calcWeightedImpact(builder, (Element) leafElement, (Element) cell.getElement()); Color backgroundColor = null; Color foregroundColor = null; if (symbolsCheckbox.getSelection()) { setSymbol(cell, impact); } else if (grlSymbolsCheckbox.getSelection()) { setGRLSymbol(cell, impact); } else { cell.setFont(Display.getDefault().getSystemFont()); cell.setText(weightString); } if (attributeExplorerCheckbox.getSelection()) { if (impact >= thresholdSpinner.getSelection()) { backgroundColor = new Color(null, 255, 255, 0); foregroundColor = new Color(null, 0, 0, 0); } else { backgroundColor = new Color(null, 255, 255, 255); foregroundColor = new Color(null, 0, 0, 0); } } else if (heatmapCheckbox.getSelection()) { backgroundColor = DefaultColors.getBackgroundColor(impact); foregroundColor = DefaultColors.getForegroundColor(impact); } else { backgroundColor = new Color(null, 255, 255, 255); foregroundColor = new Color(null, 0, 0, 0); } cell.setBackground(backgroundColor); cell.setForeground(foregroundColor); } }); } final TableViewerColumn unweightedImpactViewerColumn = new TableViewerColumn(tableViewer, SWT.NONE); elementColumnMap.put(unweightedImpactViewerColumn.getColumn(), (Element) leafElement); unweightedImpactViewerColumn.getColumn() .setText(String.format("%s", ((Element) leafElement).getName())); unweightedImpactViewerColumn.getColumn() .setToolTipText("the rating to " + ((Element) leafElement).getName()); unweightedImpactViewerColumn.getColumn().setWidth(100); unweightedImpactViewerColumn.getColumn().setMoveable(true); unweightedImpactViewerColumn.getColumn().setResizable(true); new ColumnViewerSorter(tableViewer, unweightedImpactViewerColumn) { protected int doCompare(Viewer viewer, Object e1, Object e2) { Element element = elementColumnMap.get(tableViewer.getTable().getSortColumn()); Float v1 = getRating(builder, element, (Element) e1); Float v2 = getRating(builder, element, (Element) e2); return v1.compareTo(v2); } }; unweightedImpactViewerColumn.setLabelProvider(new CellLabelProvider() { public void update(ViewerCell cell) { String weightString = getRatingString(builder, (Element) leafElement, (Element) cell.getElement()); float impact = getRating(builder, (Element) leafElement, (Element) cell.getElement()); Color backgroundColor = null; Color foregroundColor = null; if (symbolsCheckbox.getSelection()) { setSymbol(cell, impact); } else if (grlSymbolsCheckbox.getSelection()) { setGRLSymbol(cell, impact); } else { cell.setFont(Display.getDefault().getSystemFont()); cell.setText(weightString); } if (attributeExplorerCheckbox.getSelection()) { if (impact >= thresholdSpinner.getSelection()) { backgroundColor = new Color(null, 255, 255, 0); foregroundColor = new Color(null, 0, 0, 0); } else { backgroundColor = new Color(null, 255, 255, 255); foregroundColor = new Color(null, 0, 0, 0); } } else if (heatmapCheckbox.getSelection()) { backgroundColor = DefaultColors.getBackgroundColor(impact); foregroundColor = DefaultColors.getForegroundColor(impact); } else { backgroundColor = new Color(null, 255, 255, 255); foregroundColor = new Color(null, 0, 0, 0); } cell.setBackground(backgroundColor); cell.setForeground(foregroundColor); } }); // } } setCalculators(leafElements, builder, tableViewer, symbolsCheckbox, grlSymbolsCheckbox, heatmapCheckbox, attributeExplorerCheckbox, thresholdSpinner, weightsIncluded, "[global]", "of all seleted goals"); if (hasMarkedElements) setCalculators(markedLeafElements, builder, tableViewer, symbolsCheckbox, grlSymbolsCheckbox, heatmapCheckbox, attributeExplorerCheckbox, thresholdSpinner, weightsIncluded, "[selection]", "of the currently selection of the seleted goals only"); }
From source file:org.emftrace.quarc.ui.views.PropertiesView.java
License:Open Source License
private void setCalculators(List<Element> leafElements, AbstractElementGraphBuilder builder, final TableViewer tableViewer, final Button symbolsCheckbox, final Button grlSymbolsCheckbox, final Button heatmapCheckbox, final Button filterEnabledCheckbox, final Spinner thresholdSpinner, boolean weightsIncluded, String decoratorString, String tooltipDecoratorString) { HashMap<String, AbstractCalculator> calculators = new HashMap<String, AbstractCalculator>(); decoratorString = " " + decoratorString; final HashMap<TableColumn, AbstractCalculator> calculatorsColumnMap = new HashMap<TableColumn, AbstractCalculator>(); calculators.put("max", new MaxCalculator(leafElements, builder.getCacheManager())); calculators.put("min", new MinCalculator(leafElements, builder.getCacheManager())); calculators.put("avg", new AvgCalculator(leafElements, builder.getCacheManager())); if (weightsIncluded) { calculators.put("weighted max", new WeightedMaxCalculator(leafElements, builder.getCacheManager())); calculators.put("weighted min", new WeightedMinCalculator(leafElements, builder.getCacheManager())); calculators.put("weighted avg", new WeightedAvgCalculator(leafElements, builder.getCacheManager())); }//from w w w . ja v a 2 s . com for (Entry<String, AbstractCalculator> entry : calculators.entrySet()) { final AbstractCalculator calculator = entry.getValue(); String caption = entry.getKey(); final TableViewerColumn viewerColumn = new TableViewerColumn(tableViewer, SWT.NONE); TableColumn tableColumn = viewerColumn.getColumn(); calculatorsColumnMap.put(tableColumn, calculator); tableColumn.setText(caption + decoratorString); tableColumn.setToolTipText(caption + " " + tooltipDecoratorString); tableColumn.setWidth(100); tableColumn.setMoveable(true); tableColumn.setResizable(true); viewerColumn.setLabelProvider(new CellLabelProvider() { public void update(ViewerCell cell) { Float weight = calculator.calcAggregation((ConstrainedElement) cell.getElement()); setCellTooltip(cell, weight); if (symbolsCheckbox.getSelection()) { setSymbol(cell, weight); } else if (grlSymbolsCheckbox.getSelection()) { setGRLSymbol(cell, weight); } else { String texString = calculator .calcAggregationAsString((ConstrainedElement) cell.getElement()); cell.setFont(Display.getDefault().getSystemFont()); cell.setText(texString); } Color backgroundColor = null; Color foregroundColor = null; if (filterEnabledCheckbox.getSelection()) { if (weight >= thresholdSpinner.getSelection()) { backgroundColor = new Color(null, 255, 255, 0); foregroundColor = new Color(null, 0, 0, 0); } else { backgroundColor = new Color(null, 255, 255, 255); foregroundColor = new Color(null, 0, 0, 0); } } else if (heatmapCheckbox.getSelection()) { backgroundColor = DefaultColors.getBackgroundColor(weight); foregroundColor = DefaultColors.getForegroundColor(weight); } else { backgroundColor = new Color(null, 255, 255, 255); foregroundColor = new Color(null, 0, 0, 0); } cell.setBackground(backgroundColor); cell.setForeground(foregroundColor); } }); new ColumnViewerSorter(tableViewer, viewerColumn) { protected int doCompare(Viewer viewer, Object e1, Object e2) { AbstractCalculator calculator = calculatorsColumnMap .get(tableViewer.getTable().getSortColumn()); Float v1 = calculator.calcAggregation((ConstrainedElement) e1); Float v2 = calculator.calcAggregation((ConstrainedElement) e2); return v1.compareTo(v2); } }; } }
From source file:org.goko.gcode.filesender.FileSenderPart.java
License:Open Source License
/** * Create contents of the view part.// w w w. j av a 2 s . com * * @throws GkException */ @PostConstruct public void createControls(final Composite parent) throws GkException { DropTarget dt = new DropTarget(parent, DND.DROP_MOVE); dt.setTransfer(new Transfer[] { FileTransfer.getInstance() }); dt.addDropListener(new DropTargetAdapter() { @Override public void drop(DropTargetEvent event) { // Set the text field's text to the text being dropped startFileParsingJob(((String[]) event.data)[0]); refreshCommandTable(); } }); parent.setLayout(new FillLayout(SWT.HORIZONTAL)); shell = parent.getShell(); Composite composite = new Composite(parent, SWT.NONE); composite.setLayout(new GridLayout(1, false)); Group grpFile = new Group(composite, SWT.NONE); grpFile.setLayout(new GridLayout(1, false)); grpFile.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); grpFile.setText("File"); Composite composite_2 = new Composite(grpFile, SWT.NONE); composite_2.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); composite_2.setLayout(new GridLayout(3, false)); Label lblPath = new Label(composite_2, SWT.NONE); lblPath.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); lblPath.setText("Path :"); txtFilepath = new Text(composite_2, SWT.BORDER); txtFilepath.setEditable(false); txtFilepath.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); btnBrowse = new Button(composite_2, SWT.NONE); btnBrowse.addMouseListener(new MouseAdapter() { @Override public void mouseUp(MouseEvent e) { FileDialog dialog = new FileDialog(parent.getShell()); dialog.setText("Open GCode file..."); String filePath = dialog.open(); getDataModel().setFilePath(filePath); if (StringUtils.isNotBlank(filePath)) { startFileParsingJob(filePath); refreshCommandTable(); } } }); btnBrowse.setText("Browse"); Label label = new Label(grpFile, SWT.SEPARATOR | SWT.HORIZONTAL); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); Composite composite_5 = new Composite(grpFile, SWT.NONE); composite_5.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); composite_5.setLayout(new GridLayout(2, false)); Label lblFileName = new Label(composite_5, SWT.NONE); lblFileName.setAlignment(SWT.RIGHT); GridData gd_lblFileName = new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1); gd_lblFileName.widthHint = 100; lblFileName.setLayoutData(gd_lblFileName); lblFileName.setSize(57, 15); lblFileName.setText("File name :"); lblName = new Label(composite_5, SWT.NONE); lblName.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); lblName.setText("--"); Composite composite_1 = new Composite(grpFile, SWT.NONE); composite_1.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1)); composite_1.setLayout(new GridLayout(4, false)); Label lblLastModification = new Label(composite_1, SWT.NONE); lblLastModification.setText("Last modification :"); GridData gd_lblLastModification = new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1); gd_lblLastModification.widthHint = 100; lblLastModification.setLayoutData(gd_lblLastModification); lblLastupdate = new Label(composite_1, SWT.NONE); GridData gd_lblLastupdate = new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1); gd_lblLastupdate.widthHint = 150; lblLastupdate.setLayoutData(gd_lblLastupdate); Label lblSize = new Label(composite_1, SWT.NONE); lblSize.setText("Size :"); lblFilesize = new Label(composite_1, SWT.NONE); GridData gd_lblFilesize = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); gd_lblFilesize.widthHint = 80; lblFilesize.setLayoutData(gd_lblFilesize); lblFilesize.setText("--"); Group grpControls = new Group(composite, SWT.NONE); grpControls.setLayout(new GridLayout(1, false)); grpControls.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); grpControls.setText("Controls"); Composite composite_3 = new Composite(grpControls, SWT.NONE); composite_3.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); composite_3.setLayout(new GridLayout(4, false)); btnSendFile = new Button(composite_3, SWT.NONE); btnSendFile.addMouseListener(new MouseAdapter() { @Override public void mouseUp(MouseEvent e) { progressSentCommand.setState(SWT.NORMAL); getController().startFileStreaming(); } }); btnSendFile.setBounds(0, 0, 75, 25); btnSendFile.setText("Send file"); btnCancel = new Button(composite_3, SWT.NONE); btnCancel.setText("Cancel"); btnCancel.addMouseListener(new MouseAdapter() { @Override public void mouseUp(MouseEvent e) { progressSentCommand.setState(SWT.PAUSED); getController().stopFileStreaming(); } }); Label lblProgress = new Label(composite_3, SWT.NONE); lblProgress.setAlignment(SWT.RIGHT); GridData gd_lblProgress = new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1); gd_lblProgress.widthHint = 100; lblProgress.setLayoutData(gd_lblProgress); lblProgress.setText("Line count :"); totalCommandCountTxt = new Label(composite_3, SWT.NONE); GridData gd_totalCommandCountTxt = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); gd_totalCommandCountTxt.widthHint = 80; totalCommandCountTxt.setLayoutData(gd_totalCommandCountTxt); totalCommandCountTxt.setText("--"); Composite composite_4 = new Composite(grpControls, SWT.NONE); composite_4.setLayout(new GridLayout(4, false)); composite_4.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); composite_4.setBounds(0, 0, 64, 64); Label lblSentCommands = new Label(composite_4, SWT.NONE); lblSentCommands.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); lblSentCommands.setText("Progress :"); progressSentCommand = new ProgressBar(composite_4, SWT.NONE); progressSentCommand.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); new Label(composite_4, SWT.NONE); sentCommandsCountTxt = new Label(composite_4, SWT.NONE); GridData gd_sentCommandsCountTxt = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); gd_sentCommandsCountTxt.widthHint = 80; sentCommandsCountTxt.setLayoutData(gd_sentCommandsCountTxt); sentCommandsCountTxt.setText("--"); Composite composite_6 = new Composite(grpControls, SWT.NONE); composite_6.setLayout(new GridLayout(5, false)); Label lblElapsedTime = new Label(composite_6, SWT.NONE); lblElapsedTime.setText("Elapsed time :"); elapsedTimeLbl = new Label(composite_6, SWT.NONE); GridData gd_elapsedTimeLbl = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); gd_elapsedTimeLbl.widthHint = 80; elapsedTimeLbl.setLayoutData(gd_elapsedTimeLbl); elapsedTimeLbl.setText("New Label"); new Label(composite_6, SWT.NONE); Label lblRemainingTime = new Label(composite_6, SWT.NONE); lblRemainingTime.setText("Estimated time :"); remainingTimeLbl = new Label(composite_6, SWT.NONE); GridData gd_remainingTimeLbl = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); gd_remainingTimeLbl.widthHint = 80; remainingTimeLbl.setLayoutData(gd_remainingTimeLbl); remainingTimeLbl.setText("New Label"); Group grpGcodeEditor = new Group(composite, SWT.NONE); grpGcodeEditor.setLayout(new GridLayout(1, false)); grpGcodeEditor.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); grpGcodeEditor.setText("GCode viewer"); Composite composite_8 = new Composite(grpGcodeEditor, SWT.NONE); GridLayout gl_composite_8 = new GridLayout(1, false); gl_composite_8.verticalSpacing = 0; gl_composite_8.marginWidth = 0; gl_composite_8.marginHeight = 0; gl_composite_8.horizontalSpacing = 0; composite_8.setLayout(gl_composite_8); composite_8.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); tableViewer = new TableViewer(composite_8, SWT.BORDER | SWT.FULL_SELECTION | SWT.HIDE_SELECTION | SWT.VIRTUAL); table = tableViewer.getTable(); table.setHeaderVisible(true); table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); TableViewerColumn tableViewerColumn = new TableViewerColumn(tableViewer, SWT.NONE | SWT.RIGHT); TableColumn tblclmnLine = tableViewerColumn.getColumn(); tblclmnLine.setWidth(50); tblclmnLine.setText("Line"); tableViewerColumn.setLabelProvider(new StyledCellLabelProvider() { @Override public void update(ViewerCell cell) { GCodeCommand p = (GCodeCommand) cell.getElement(); cell.setText(String.valueOf(p.getLineNumber())); cell.setForeground(SWTResourceManager.getColor(SWT.COLOR_DARK_GRAY)); super.update(cell); } }); TableViewerColumn tableViewerColumn_1 = new TableViewerColumn(tableViewer, SWT.NONE); TableColumn tblclmnCommand = tableViewerColumn_1.getColumn(); tblclmnCommand.setWidth(300); tblclmnCommand.setText("Command"); tableViewerColumn_1.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { GCodeCommand p = (GCodeCommand) element; return String.valueOf(p.getStringCommand()); } }); tableViewer.setContentProvider(new GCodeTableLazyContentProvider(tableViewer)); // special settings for the lazy content provider tableViewer.setUseHashlookup(true); // create the model and set it as input tableViewer.setInput(new ArrayList<GCodeCommand>()); // you must explicitly set the items count tableViewer.setItemCount(0); initCustomBindings(); }
From source file:org.jkiss.dbeaver.ext.mockdata.MockDataWizardPageSettings.java
License:Apache License
public void createControl(Composite parent) { Composite composite = UIUtils.createPlaceholder(parent, 1); {/*from w ww .j ava 2 s . c om*/ SelectionListener changeListener = new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { updateState(); } }; Composite entityPlaceholder = UIUtils.createPlaceholder(composite, 2); this.entityNameText = UIUtils.createLabelText(entityPlaceholder, MockDataMessages.tools_mockdata_wizard_page_settings_text_entity, "", SWT.NONE | SWT.READ_ONLY); GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING); gd.widthHint = 230; gd.verticalIndent = 5; gd.horizontalIndent = 9; entityPlaceholder.setLayoutData(gd); Group settingsGroup = UIUtils.createControlGroup(composite, MockDataMessages.tools_mockdata_wizard_page_settings_group_settings, 4, GridData.FILL_HORIZONTAL, 0); gd = new GridData(GridData.FILL_HORIZONTAL); gd.verticalIndent = 5; settingsGroup.setLayoutData(gd); this.removeOldDataCheck = UIUtils.createCheckbox(settingsGroup, MockDataMessages.tools_mockdata_wizard_page_settings_checkbox_remove_old_data, null, mockDataSettings.isRemoveOldData(), 4); removeOldDataCheck.addSelectionListener(changeListener); this.rowsText = UIUtils.createLabelText(settingsGroup, MockDataMessages.tools_mockdata_wizard_page_settings_combo_rows, String.valueOf(mockDataSettings.getRowsNumber()), SWT.BORDER, new GridData(110, SWT.DEFAULT)); rowsText.addSelectionListener(changeListener); rowsText.addVerifyListener(UIUtils.getLongVerifyListener(rowsText)); rowsText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { updateState(); } }); } { Group generatorsGroup = UIUtils.createControlGroup(composite, MockDataMessages.tools_mockdata_wizard_page_settings_group_generators, 5, GridData.FILL_BOTH, 0); GridData gd = new GridData(GridData.FILL_BOTH); gd.verticalIndent = 5; generatorsGroup.setLayoutData(gd); Composite placeholder = UIUtils.createPlaceholder(generatorsGroup, 1); gd = new GridData(GridData.FILL_VERTICAL); gd.widthHint = 250; placeholder.setLayoutData(gd); Button autoAssignButton = new Button(placeholder, SWT.PUSH); autoAssignButton.setText(MockDataMessages.tools_mockdata_wizard_page_settings_button_autoassign); autoAssignButton.setImage(DBeaverIcons.getImage(UIIcon.OBJ_REFRESH)); autoAssignButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { if (UIUtils.confirmAction(getShell(), MockDataMessages.tools_mockdata_wizard_title, MockDataMessages.tools_mockdata_wizard_page_settings_button_autoassign_confirm)) { autoAssignGenerators(); } } }); gd = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING); // gd.horizontalIndent = 5; autoAssignButton.setLayoutData(gd); generatorsTableViewer = new TableViewer(placeholder, SWT.BORDER | SWT.SINGLE | SWT.FULL_SELECTION); final Table table = generatorsTableViewer.getTable(); gd = new GridData(GridData.FILL_BOTH); gd.verticalIndent = 5; table.setLayoutData(gd); table.setHeaderVisible(true); table.setLinesVisible(true); generatorsTableViewer.setContentProvider(new IStructuredContentProvider() { @Override public void dispose() { } @Override public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } @Override public Object[] getElements(Object inputElement) { if (inputElement instanceof Collection) { return ((Collection<?>) inputElement).toArray(); } return new Object[0]; } }); CellLabelProvider labelProvider = new CellLabelProvider() { @Override public void update(ViewerCell cell) { DBSAttributeBase attribute = (DBSAttributeBase) cell.getElement(); AttributeGeneratorProperties attributeGeneratorProperties = mockDataSettings .getAttributeGeneratorProperties(attribute); if (cell.getColumnIndex() == 0) { cell.setImage(DBeaverIcons.getImage(DBValueFormatting.getTypeImage(attribute))); cell.setText(attribute.getName()); try { if (DBUtils.checkUnique(mockDataSettings.getMonitor(), mockDataSettings.getEntity(), attribute) != null) { cell.setFont(boldFont); } } catch (DBException e) { log.error("Error checking the attribute '" + attribute.getName() + "' properties", e); } if (attributeGeneratorProperties != null && attributeGeneratorProperties.isEmpty()) { cell.setForeground(table.getDisplay().getSystemColor(SWT.COLOR_RED)); noGeneratorInfoLabel.setVisible(true); } } else { if (attributeGeneratorProperties != null && !attributeGeneratorProperties.isEmpty()) { String selectedGeneratorId = attributeGeneratorProperties.getSelectedGeneratorId(); String label = mockDataSettings.getGeneratorDescriptor(selectedGeneratorId).getLabel(); cell.setText(label.trim()); } } } }; TableViewerColumn attributeColumn = new TableViewerColumn(generatorsTableViewer, SWT.LEFT); attributeColumn.setLabelProvider(labelProvider); attributeColumn.getColumn() .setText(MockDataMessages.tools_mockdata_wizard_page_settings_generatorselector_attribute); TableViewerColumn generatorColumn = new TableViewerColumn(generatorsTableViewer, SWT.LEFT); generatorColumn.setLabelProvider(labelProvider); TableColumn column = generatorColumn.getColumn(); column.setText(MockDataMessages.tools_mockdata_wizard_page_settings_generatorselector_generator); generatorColumn.setEditingSupport(new EditingSupport(generatorsTableViewer) { @Override protected CellEditor getCellEditor(Object element) { DBSAttributeBase attribute = (DBSAttributeBase) element; AttributeGeneratorProperties attributeGenerators = mockDataSettings .getAttributeGeneratorProperties(attribute); Set<String> generators = new LinkedHashSet<>(); if (attributeGenerators.isEmpty()) { noGeneratorInfoLabel.setVisible(true); TextCellEditor textCellEditor = new TextCellEditor(generatorsTableViewer.getTable()); textCellEditor.getControl().setEnabled(false); return textCellEditor; } else { for (String generatorId : attributeGenerators.getGenerators()) { generators.add(mockDataSettings.getGeneratorDescriptor(generatorId).getLabel()); } CustomComboBoxCellEditor customComboBoxCellEditor = new CustomComboBoxCellEditor( generatorsTableViewer, generatorsTableViewer.getTable(), generators.toArray(new String[generators.size()]), SWT.BORDER | SWT.READ_ONLY); return customComboBoxCellEditor; } } @Override protected boolean canEdit(Object element) { return true; } // disable the generator selection @Override protected Object getValue(Object element) { DBSAttributeBase attribute = (DBSAttributeBase) element; String selectedGenerator = mockDataSettings.getAttributeGeneratorProperties(attribute) .getSelectedGeneratorId(); if (selectedGenerator != null) { return mockDataSettings.getGeneratorDescriptor(selectedGenerator).getLabel(); } else { return ""; } } @Override protected void setValue(Object element, Object value) { DBSAttributeBase attribute = (DBSAttributeBase) element; selectGenerator(attribute, (String) value); } }); table.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { saveGeneratorProperties(); reloadProperties((DBSAttributeBase) e.item.getData(), null); } }); // generator properties placeholder = UIUtils.createPlaceholder(generatorsGroup, 1); placeholder.setLayoutData(new GridData(GridData.FILL_BOTH)); Composite labelCombo = UIUtils.createPlaceholder(placeholder, 5); gd = new GridData(GridData.FILL_HORIZONTAL); labelCombo.setLayoutData(gd); generatorCombo = new Combo(labelCombo, SWT.READ_ONLY | SWT.DROP_DOWN); gd = new GridData(); gd.widthHint = 80; generatorCombo.setLayoutData(gd); generatorCombo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { selectGenerator(selectedAttribute, generatorCombo.getText()); } }); Composite descriptionCombo = UIUtils.createPlaceholder(labelCombo, 2); gd = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING | GridData.FILL_HORIZONTAL); descriptionCombo.setLayoutData(gd); generatorDescriptionLabel = new Label(descriptionCombo, SWT.NONE); generatorDescriptionLabel .setFont(JFaceResources.getFontRegistry().getItalic(JFaceResources.DEFAULT_FONT)); generatorDescriptionLabel.setText(""); gd = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING | GridData.FILL_HORIZONTAL); gd.horizontalIndent = 5; generatorDescriptionLabel.setLayoutData(gd); generatorDescriptionLink = UIUtils.createLink(descriptionCombo, "", new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { if (!CommonUtils.isEmpty(generatorLinkUrl)) { IWorkbenchBrowserSupport support = PlatformUI.getWorkbench().getBrowserSupport(); try { support.getExternalBrowser().openURL(new URL(generatorLinkUrl)); } catch (Exception ex) { } } } }); gd = new GridData(GridData.HORIZONTAL_ALIGN_END); gd.horizontalIndent = 5; generatorDescriptionLink.setLayoutData(gd); Button resetButton = new Button(labelCombo, SWT.PUSH); resetButton.setText(MockDataMessages.tools_mockdata_wizard_page_settings_button_reset); resetButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { for (Object key : propertySource.getProperties().keySet()) { propertySource.resetPropertyValueToDefault(key); } propsEditor.loadProperties(propertySource); generatorsTableViewer.refresh(true, true); } }); gd = new GridData(); gd.horizontalIndent = 5; resetButton.setLayoutData(gd); propsEditor = new PropertyTreeViewer(placeholder, SWT.BORDER); gd = new GridData(GridData.FILL_BOTH); gd.verticalIndent = 5; propsEditor.getControl().setLayoutData(gd); noGeneratorInfoLabel = UIUtils.createInfoLabel(composite, MockDataMessages.tools_mockdata_wizard_page_settings_button_info_notfound); //noGeneratorInfoLabel.setForeground(generatorsTableViewer.getDisplay().getSystemColor(SWT.COLOR_RED)); gd = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING); gd.horizontalSpan = 2; gd.verticalIndent = 5; noGeneratorInfoLabel.setLayoutData(gd); noGeneratorInfoLabel.setVisible(false); table.addControlListener(new ControlAdapter() { @Override public void controlResized(ControlEvent e) { UIUtils.packColumns(table); UIUtils.maxTableColumnsWidth(table); table.removeControlListener(this); } }); } setControl(composite); boldFont = UIUtils.makeBoldFont(generatorsTableViewer.getControl().getFont()); }
From source file:org.jkiss.dbeaver.ui.dialogs.driver.DriverEditDialog.java
License:Open Source License
private void createLibrariesTab(TabFolder group) { GridData gd;/*from w ww. j a v a2 s . co m*/ Composite libsGroup = new Composite(group, SWT.NONE); libsGroup.setLayout(new GridLayout(2, false)); { Composite libsListGroup = new Composite(libsGroup, SWT.NONE); gd = new GridData(GridData.FILL_BOTH); libsListGroup.setLayoutData(gd); GridLayout layout = new GridLayout(1, false); layout.marginHeight = 0; layout.marginWidth = 0; libsListGroup.setLayout(layout); // Additional libraries list libTable = new TreeViewer(libsListGroup, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL); libTable.setContentProvider(new LibContentProvider()); libTable.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { final Object element = cell.getElement(); if (element instanceof DBPDriverLibrary) { DBPDriverLibrary lib = (DBPDriverLibrary) element; String displayName = lib.getDisplayName(); if (lib.getPreferredVersion() != null) { displayName += " [" + lib.getPreferredVersion() + "]"; } cell.setText(displayName); File localFile = lib.getLocalFile(); if (localFile != null && !localFile.exists()) { cell.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_RED)); } else if (!driver.isLibraryResolved(lib)) { cell.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_BLUE)); } else { cell.setForeground(null); } cell.setImage(DBeaverIcons.getImage(lib.getIcon())); } else { cell.setText(element.toString()); cell.setImage(DBeaverIcons.getImage(UIIcon.JAR)); } } }); libTable.getControl().setLayoutData(new GridData(GridData.FILL_BOTH)); libTable.getControl().addListener(SWT.Selection, new Listener() { @Override public void handleEvent(Event event) { changeLibSelection(); } }); // Find driver class boolean isReadOnly = !provider.isDriversManagable(); Composite findClassGroup = new Composite(libsListGroup, SWT.TOP); findClassGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); layout = new GridLayout(3, false); layout.marginHeight = 0; layout.marginWidth = 0; findClassGroup.setLayout(layout); UIUtils.createControlLabel(findClassGroup, CoreMessages.dialog_edit_driver_label_driver_class); classListCombo = new Combo(findClassGroup, SWT.DROP_DOWN | SWT.READ_ONLY); classListCombo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); classListCombo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { int selIndex = classListCombo.getSelectionIndex(); if (selIndex >= 0) { driverClassText.setText(classListCombo.getItem(selIndex)); } } }); classListCombo.setEnabled(!isReadOnly); findClassButton = new Button(findClassGroup, SWT.PUSH); findClassButton.setText(CoreMessages.dialog_edit_driver_button_bind_class); findClassButton.addListener(SWT.Selection, new Listener() { @Override public void handleEvent(Event event) { try { DriverClassFindJob classFinder = new DriverClassFindJob(driver, "java/sql/Driver", true); new ProgressMonitorDialog(getShell()).run(true, true, classFinder); if (classListCombo != null && !classListCombo.isDisposed()) { java.util.List<String> classNames = classFinder.getDriverClassNames(); classListCombo.setItems(classNames.toArray(new String[classNames.size()])); classListCombo.setListVisible(true); } } catch (InvocationTargetException e) { log.error(e.getTargetException()); } catch (InterruptedException e) { log.error(e); } } }); findClassButton.setEnabled(!isReadOnly); } Composite libsControlGroup = new Composite(libsGroup, SWT.TOP); libsControlGroup.setLayout(new GridLayout(1, true)); libsControlGroup.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_BEGINNING)); UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_add_file, new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { FileDialog fd = new FileDialog(getShell(), SWT.OPEN | SWT.MULTI); fd.setText(CoreMessages.dialog_edit_driver_dialog_open_driver_library); fd.setFilterPath(curFolder); String[] filterExt = { "*.jar;*.zip", "*.dll;*.so", "*.*", "*" }; //$NON-NLS-1$ //$NON-NLS-2$ fd.setFilterExtensions(filterExt); String selected = fd.open(); if (selected != null) { curFolder = fd.getFilterPath(); String[] fileNames = fd.getFileNames(); if (!ArrayUtils.isEmpty(fileNames)) { File folderFile = new File(curFolder); for (String fileName : fileNames) { driver.addDriverLibrary(DriverLibraryAbstract.createFromPath(driver, fileName.endsWith(".jar") || fileName.endsWith(".zip") ? DBPDriverLibrary.FileType.jar : DBPDriverLibrary.FileType.lib, new File(folderFile, fileName).getAbsolutePath(), null)); } changeLibContent(); } } } }); UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_add_folder, new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { DirectoryDialog fd = new DirectoryDialog(getShell(), SWT.MULTI); fd.setText(CoreMessages.dialog_edit_driver_dialog_open_driver_directory); fd.setFilterPath(curFolder); String selected = fd.open(); if (selected != null) { curFolder = fd.getFilterPath(); driver.addDriverLibrary(DriverLibraryAbstract.createFromPath(driver, DBPDriverLibrary.FileType.jar, selected, null)); changeLibContent(); } } }); UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_add_artifact, new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { EditMavenArtifactDialog fd = new EditMavenArtifactDialog(getShell(), null); if (fd.open() == IDialogConstants.OK_ID) { driver.addDriverLibrary(DriverLibraryAbstract.createFromPath(driver, DBPDriverLibrary.FileType.jar, DriverLibraryMavenArtifact.PATH_PREFIX + fd.getArtifact().getPath(), null)); changeLibContent(); } } }); updateVersionButton = UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_update_version, new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { driver.updateFiles(); changeLibContent(); } }); detailsButton = UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_details, new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { new DriverLibraryDetailsDialog(getShell(), driver, getSelectedLibrary()).open(); } }); detailsButton.setEnabled(false); deleteButton = UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_delete, new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { IStructuredSelection selection = (IStructuredSelection) libTable.getSelection(); if (selection != null && !selection.isEmpty()) { if (UIUtils.confirmAction(getShell(), "Delete library", "Are you sure you want to delete selected libraries?")) { for (Object obj : selection.toArray()) { if (obj instanceof DriverLibraryAbstract) { driver.removeDriverLibrary((DriverLibraryAbstract) obj); } } } } changeLibContent(); } }); deleteButton.setEnabled(false); /* upButton = UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_up, new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { DriverLibraryAbstract selectedLib = getSelectedLibrary(); int selIndex = libList.indexOf(selectedLib); Collections.swap(libList, selIndex, selIndex - 1); changeLibContent(); changeLibSelection(); } }); upButton.setEnabled(false); downButton = UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_down, new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { DriverLibraryAbstract selectedLib = getSelectedLibrary(); int selIndex = libList.indexOf(selectedLib); Collections.swap(libList, selIndex, selIndex + 1); changeLibContent(); changeLibSelection(); } }); downButton.setEnabled(false); */ UIUtils.createHorizontalLine(libsControlGroup); UIUtils.createToolButton(libsControlGroup, CoreMessages.dialog_edit_driver_button_classpath, new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { ViewClasspathDialog cpDialog = new ViewClasspathDialog(getShell()); cpDialog.open(); } }); changeLibContent(); TabItem libsTab = new TabItem(group, SWT.NONE); libsTab.setText(CoreMessages.dialog_edit_driver_tab_name_driver_libraries); libsTab.setToolTipText(CoreMessages.dialog_edit_driver_tab_tooltip_driver_libraries); libsTab.setControl(libsGroup); }