List of usage examples for org.eclipse.jface.viewers TableViewer TableViewer
public TableViewer(Composite parent, int style)
From source file:com.bdaum.zoom.gps.internal.preferences.GpsPreferencePage.java
License:Open Source License
private void createModeGroup(Composite composite) { CGroup group = UiUtilities.createGroup(composite, 1, Messages.getString("GpsPreferencePage.mode")); //$NON-NLS-1$ editButton = WidgetFactory.createCheckButton(group, Messages.getString("GpsPreferencePage.edit_trackpoints"), //$NON-NLS-1$ null);//from ww w .j ava 2 s. com tagButton = WidgetFactory.createCheckButton(group, Messages.getString("GpsPreferencePage.Overwrite_tags"), //$NON-NLS-1$ null); waypointButton = WidgetFactory.createCheckButton(group, Messages.getString("GpsPreferencePage.use_waypoints"), //$NON-NLS-1$ null); altitudeButton = WidgetFactory.createCheckButton(group, Messages.getString("GpsPreferencePage.Update_altitude"), //$NON-NLS-1$ null); new Label(group, SWT.NONE).setText(Messages.getString("GpsPreferencePage.nogo_areas")); //$NON-NLS-1$ Composite viewerGroup = new Composite(group, SWT.NONE); viewerGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); GridLayout layout = new GridLayout(2, false); layout.marginHeight = 0; viewerGroup.setLayout(layout); nogoViewer = new TableViewer(viewerGroup, SWT.SINGLE | SWT.BORDER | SWT.V_SCROLL); GridData layoutData = new GridData(200, 100); layoutData.horizontalIndent = 16; nogoViewer.getControl().setLayoutData(layoutData); TableViewerColumn col1 = new TableViewerColumn(nogoViewer, SWT.NONE); col1.getColumn().setWidth(200); col1.setLabelProvider(ZColumnLabelProvider.getDefaultInstance()); nogoViewer.setContentProvider(ArrayContentProvider.getInstance()); nogoViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { updateTableButtons(); } }); Composite buttonGroup = new Composite(viewerGroup, SWT.NONE); buttonGroup.setLayoutData(new GridData(SWT.END, SWT.FILL, false, true)); buttonGroup.setLayout(new GridLayout(1, false)); addButton = new Button(buttonGroup, SWT.PUSH); addButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); addButton.setText(Messages.getString("GpsPreferencePage.add")); //$NON-NLS-1$ addButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { EditNogoDialog dialog = new EditNogoDialog(getShell(), null); if (dialog.open() == EditNogoDialog.OK) { GeoArea area = dialog.getArea(); nogoAreas.add(area); nogoViewer.add(area); nogoViewer.setSelection(new StructuredSelection(area), true); updateTableButtons(); } } }); editNogoButton = new Button(buttonGroup, SWT.PUSH); editNogoButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); editNogoButton.setText(Messages.getString("GpsPreferencePage.edit")); //$NON-NLS-1$ editNogoButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { GeoArea area = (GeoArea) nogoViewer.getStructuredSelection().getFirstElement(); EditNogoDialog dialog = new EditNogoDialog(getShell(), area); if (dialog.open() == EditNogoDialog.OK) nogoViewer.update(area, null); } }); deleteButton = new Button(buttonGroup, SWT.PUSH); deleteButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); deleteButton.setText(Messages.getString("GpsPreferencePage.remove")); //$NON-NLS-1$ deleteButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { GeoArea area = (GeoArea) nogoViewer.getStructuredSelection().getFirstElement(); nogoAreas.remove(area); nogoViewer.remove(area); updateButtons(); } }); }
From source file:com.bdaum.zoom.net.ui.internal.preferences.InternetPreferencePage.java
License:Open Source License
private void createFtpGroup(Composite parent) { CGroup group = UiUtilities.createGroup(parent, 2, Messages.InternetPreferencePage_ftp_accounts); ftpViewer = new TableViewer(group, SWT.V_SCROLL | SWT.SINGLE | SWT.BORDER); ftpViewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH)); ftpViewer.setContentProvider(ArrayContentProvider.getInstance()); ftpViewer.setLabelProvider(new ZColumnLabelProvider() { @Override//from w w w .j a v a 2 s .c o m public String getText(Object element) { if (element instanceof FtpAccount) return ((FtpAccount) element).getName(); return element.toString(); } }); ftpViewer.setComparator(ZViewerComparator.INSTANCE); Composite buttonGroup = new Composite(group, SWT.NONE); buttonGroup.setLayoutData(new GridData(SWT.END, SWT.FILL, false, true)); buttonGroup.setLayout(new GridLayout(1, false)); Button newButton = createPushButton(buttonGroup, Messages.InternetPreferencePage_new, Messages.InternetPreferencePage_new_tooltip); newButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { EditFtpDialog dialog = new EditFtpDialog(getShell(), new FtpAccount(), false, null); if (dialog.open() == Window.OK) { FtpAccount result = dialog.getResult(); ftpAccounts.add(result); ftpViewer.setInput(ftpAccounts); ftpViewer.setSelection(new StructuredSelection(result)); } } }); editButton = createPushButton(buttonGroup, Messages.InternetPreferencePage_edit, Messages.InternetPreferencePage_edit_tooltip); editButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { IStructuredSelection selection = ftpViewer.getStructuredSelection(); Object firstElement = selection.getFirstElement(); if (firstElement instanceof FtpAccount) { EditFtpDialog dialog = new EditFtpDialog(getShell(), (FtpAccount) firstElement, false, null); if (dialog.open() == Window.OK) { ftpViewer.update(dialog.getResult(), null); } } } }); removeButton = createPushButton(buttonGroup, Messages.InternetPreferencePage_remove, Messages.InternetPreferencePage_remove_tooltip); removeButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Object firstElement = ftpViewer.getStructuredSelection().getFirstElement(); if (firstElement instanceof FtpAccount) { int i = ftpAccounts.indexOf(firstElement); FtpAccount sibling = (i < ftpAccounts.size() - 1) ? ftpAccounts.get(i + 1) : (i > 0) ? ftpAccounts.get(i - 1) : null; ftpAccounts.remove(i); ftpViewer.setInput(ftpAccounts); if (sibling != null) ftpViewer.setSelection(new StructuredSelection(sibling)); } } }); ftpViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { updateButtons(); } }); updateButtons(); }
From source file:com.bdaum.zoom.peer.internal.preferences.PeerPreferencePage.java
License:Open Source License
@SuppressWarnings("unused") private Control createIncomingGroup(final CTabFolder parent) { Composite comp = new Composite(parent, SWT.NONE); comp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); comp.setLayout(new GridLayout(1, false)); Composite innerComp = new Composite(comp, SWT.NONE); GridLayout layout = new GridLayout(2, false); layout.marginWidth = 0;//from w ww . j a v a 2s .c o m layout.marginHeight = 20; innerComp.setLayout(layout); innerComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); Label label = new Label(innerComp, SWT.WRAP); label.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false, 2, 1)); label.setText(Messages.PeerPreferencePage_incoming_msg); incomingViewer = new TableViewer(innerComp, SWT.SINGLE | SWT.BORDER | SWT.V_SCROLL | SWT.FULL_SELECTION); incomingViewer.getTable().setLinesVisible(true); incomingViewer.getTable().setHeaderVisible(true); incomingViewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); final TableViewerColumn col1 = new TableViewerColumn(incomingViewer, SWT.NONE); col1.getColumn().setWidth(250); col1.getColumn().setText(Messages.PeerPreferencePage_calling_peer); col1.setLabelProvider(ZColumnLabelProvider.getDefaultInstance()); final TableViewerColumn col2 = new TableViewerColumn(incomingViewer, SWT.NONE); col2.getColumn().setWidth(250); col2.getColumn().setText(Messages.PeerPreferencePage_last_access); col2.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof PeerDefinition) return nf.format(new Date(((PeerDefinition) element).getLastAccess())); return ""; //$NON-NLS-1$ } }); TableViewerColumn col3 = new TableViewerColumn(incomingViewer, SWT.NONE); col3.getColumn().setWidth(250); col3.getColumn().setText(Messages.PeerPreferencePage_last_op); col3.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof PeerDefinition) return ((PeerDefinition) element).getRightsLabel(); return ""; //$NON-NLS-1$ } @Override public Color getForeground(Object element) { if (element instanceof PeerDefinition) return ((PeerDefinition) element).isBlocked() ? parent.getDisplay().getSystemColor(SWT.COLOR_RED) : null; return super.getForeground(element); } }); new SortColumnManager(incomingViewer, new int[] { SWT.UP, SWT.DOWN, SWT.NONE }, 1); incomingViewer.setContentProvider(ArrayContentProvider.getInstance()); incomingViewer.setComparator(new ZViewerComparator() { @Override public int compare(Viewer viewer, Object e1, Object e2) { if (e1 instanceof PeerDefinition && e2 instanceof PeerDefinition) { Table table = incomingViewer.getTable(); int sortDirection = table.getSortDirection(); TableColumn sortColumn = incomingViewer.getTable().getSortColumn(); int result; if (sortColumn == table.getColumn(0)) result = UiUtilities.stringComparator.compare(((PeerDefinition) e1).getLocation(), ((PeerDefinition) e2).getLocation()); else { long t1 = ((PeerDefinition) e1).getLastAccess(); long t2 = ((PeerDefinition) e2).getLastAccess(); result = t1 > t2 ? 1 : t1 < t2 ? -1 : 0; } return sortDirection == SWT.DOWN ? result : -result; } return super.compare(viewer, e1, e2); } }); Composite buttonGroup = new Composite(innerComp, SWT.NONE); buttonGroup.setLayoutData(new GridData(SWT.END, SWT.BEGINNING, false, true)); buttonGroup.setLayout(new GridLayout()); Button clearButton = new Button(buttonGroup, SWT.PUSH); clearButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); clearButton.setText(Messages.PeerPreferencePage_clear); clearButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { @SuppressWarnings("unchecked") Collection<PeerDefinition> peers = (Collection<PeerDefinition>) incomingViewer.getInput(); Iterator<PeerDefinition> it = peers.iterator(); while (it.hasNext()) { PeerDefinition peerDefinition = it.next(); if (!peerDefinition.isBlocked()) it.remove(); } incomingViewer.setInput(peers); } }); final Button blockButton = new Button(buttonGroup, SWT.PUSH); blockButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); blockButton.setText(Messages.PeerPreferencePage_toggle); blockButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { IStructuredSelection sel = incomingViewer.getStructuredSelection(); Object firstElement = sel.getFirstElement(); if (firstElement instanceof PeerDefinition) { PeerDefinition peerDefinition = (PeerDefinition) firstElement; if (peerDefinition.isBlocked()) PeerActivator.getDefault().getBlockedNodes().remove(peerDefinition.getHost()); else PeerActivator.getDefault().getBlockedNodes().add(peerDefinition.getHost()); PeerActivator.getDefault().writeBlockedNodes(); incomingViewer.setInput(incomingViewer.getInput()); incomingViewer.setSelection(sel); } } }); blockButton.setEnabled(false); incomingViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { blockButton.setEnabled(!event.getSelection().isEmpty()); } }); return comp; }
From source file:com.bdaum.zoom.peer.internal.preferences.PeerPreferencePage.java
License:Open Source License
@SuppressWarnings("unused") private Control createPeerGroup(CTabFolder parent) { Composite comp = new Composite(parent, SWT.NONE); comp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); comp.setLayout(new GridLayout(1, false)); Composite innerComp = new Composite(comp, SWT.NONE); GridLayout layout = new GridLayout(2, false); layout.marginWidth = 0;/* w w w . j ava2 s. com*/ layout.marginHeight = 20; innerComp.setLayout(layout); innerComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); Label label = new Label(innerComp, SWT.WRAP); label.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false, 2, 1)); label.setText(Messages.PeerPreferencePage_network_geography); peerViewer = new TableViewer(innerComp, SWT.SINGLE | SWT.BORDER | SWT.V_SCROLL); peerViewer.getTable().setLinesVisible(true); peerViewer.getTable().setHeaderVisible(true); peerViewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); TableViewerColumn col0 = new TableViewerColumn(peerViewer, SWT.NONE); col0.getColumn().setWidth(100); col0.getColumn().setText(Messages.PeerPreferencePage_nickname); col0.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof PeerDefinition) { String nick = ((PeerDefinition) element).getNickname(); return nick == null ? "" : nick; //$NON-NLS-1$ } return ""; //$NON-NLS-1$ } }); EditingSupport editingSupport = new EditingSupport(peerViewer) { @Override protected void setValue(Object element, Object value) { if (element instanceof PeerDefinition && value instanceof PeerDefinition) { ((PeerDefinition) element).setHost(((PeerDefinition) value).getHost()); ((PeerDefinition) element).setNickname(((PeerDefinition) value).getNickname()); ((PeerDefinition) element).setPort(((PeerDefinition) value).getPort()); peerViewer.update(element, null); } } @Override protected Object getValue(Object element) { if (element instanceof PeerDefinition) return element; return null; } @Override protected CellEditor getCellEditor(final Object element) { if (element instanceof PeerDefinition) { return new DialogCellEditor(peerViewer.getTable()) { @Override protected Object openDialogBox(Control cellEditorWindow) { PeerDefinitionDialog dialog = new PeerDefinitionDialog(cellEditorWindow.getShell(), (PeerDefinition) element, true, false, false); if (dialog.open() == Window.OK) return dialog.getResult(); return null; } }; } return null; } @Override protected boolean canEdit(Object element) { return true; } }; col0.setEditingSupport(editingSupport); TableViewerColumn col1 = new TableViewerColumn(peerViewer, SWT.NONE); col1.getColumn().setWidth(250); col1.getColumn().setText(Messages.PeerPreferencePage_peer_location); col1.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof PeerDefinition) return ((PeerDefinition) element).getLocation(); return ""; //$NON-NLS-1$ } }); col1.setEditingSupport(editingSupport); TableViewerColumn col2 = new TableViewerColumn(peerViewer, SWT.NONE); col2.getColumn().setWidth(150); col2.getColumn().setText(Messages.PeerPreferencePage_status); col2.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof PeerDefinition) return PeerActivator.getDefault().isOnline((PeerDefinition) element) ? Messages.PeerPreferencePage_online : Messages.PeerPreferencePage_offline; return ""; //$NON-NLS-1$ } }); peerViewer.setContentProvider(ArrayContentProvider.getInstance()); new SortColumnManager(peerViewer, new int[] { SWT.UP, SWT.UP, SWT.NONE }, 0); peerViewer.setComparator(ZViewerComparator.INSTANCE); Composite buttonGroup = new Composite(innerComp, SWT.NONE); buttonGroup.setLayoutData(new GridData(SWT.END, SWT.BEGINNING, false, true)); buttonGroup.setLayout(new GridLayout()); Button addButton = new Button(buttonGroup, SWT.PUSH); addButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); addButton.setText(Messages.PeerPreferencePage_add); addButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { PeerDefinitionDialog dialog = new PeerDefinitionDialog(getShell(), null, true, false, false); if (dialog.open() == PeerDefinitionDialog.OK) { PeerDefinition newPeer = dialog.getResult(); @SuppressWarnings("unchecked") List<PeerDefinition> peers = (List<PeerDefinition>) peerViewer.getInput(); peers.add(newPeer); peerViewer.setInput(peers); peerViewer.setSelection(new StructuredSelection(newPeer)); } } }); final Button removeButton = new Button(buttonGroup, SWT.PUSH); removeButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); removeButton.setText(Messages.PeerPreferencePage_remove); removeButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { IStructuredSelection sel = peerViewer.getStructuredSelection(); Object firstElement = sel.getFirstElement(); if (firstElement instanceof PeerDefinition) { @SuppressWarnings("unchecked") List<PeerDefinition> peers = (List<PeerDefinition>) peerViewer.getInput(); peers.remove(firstElement); peerViewer.setInput(peers); } } }); removeButton.setEnabled(false); peerViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { removeButton.setEnabled(!event.getSelection().isEmpty()); } }); return comp; }
From source file:com.bdaum.zoom.ui.internal.dialogs.AbstractSelectExhibitDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { Composite area = (Composite) super.createDialogArea(parent); GridLayout layout = (GridLayout) area.getLayout(); layout.marginWidth = 1;/*from w ww . j av a2 s . com*/ layout.marginHeight = 1; viewer = new TableViewer(area, SWT.V_SCROLL | SWT.SINGLE | SWT.BORDER | SWT.VIRTUAL); viewer.getControl().setLayoutData(new GridData(200, 350)); viewer.setContentProvider(new ILazyContentProvider() { public void inputChanged(Viewer aViewer, Object oldInput, Object newInput) { // do nothing } public void dispose() { // do nothing } public void updateElement(int index) { viewer.replace(exhibits.get(index), index); } }); viewer.setLabelProvider(new ColumnLabelProvider() { private Map<String, Image> thMap = new HashMap<String, Image>(); @Override public String getText(Object element) { return AbstractSelectExhibitDialog.this.getText(element); } @Override public Font getFont(Object element) { return AbstractSelectExhibitDialog.this.getFont(element); } @Override public Image getImage(Object element) { String assetID = AbstractSelectExhibitDialog.this.getAssetId(element); if (assetID == null) return null; Image image = thMap.get(assetID); if (image == null) { ICore core = Core.getCore(); AssetImpl asset = core.getDbManager().obtainAsset(assetID); if (asset != null) { image = core.getImageCache().getImage(asset); if (image != null) { Rectangle bounds = image.getBounds(); double scale = ImageUtilities.computeScale(bounds.width, bounds.height, ICONWIDTH, ICONWIDTH); int newWidth = (int) (bounds.width * scale + 0.5d); int newHeight = (int) (bounds.height * scale + 0.5d); Image thumbnail = new Image(image.getDevice(), ICONWIDTH, ICONWIDTH); GC gc = new GC(thumbnail); try { if (advanced) { gc.setAntialias(SWT.ON); gc.setInterpolation(SWT.HIGH); } gc.setBackground(getShell().getDisplay().getSystemColor(SWT.COLOR_GRAY)); gc.fillRectangle(0, 0, ICONWIDTH, ICONWIDTH); gc.drawImage(image, 0, 0, bounds.width, bounds.height, (ICONWIDTH - newWidth) / 2, (ICONWIDTH - newHeight) / 2, newWidth, newHeight); image = thumbnail; } finally { gc.dispose(); } thMap.put(assetID, image); } } } return image; } @Override public void dispose() { for (Image image : thMap.values()) image.dispose(); thMap.clear(); super.dispose(); } }); viewer.setInput(exhibits); viewer.setItemCount(exhibits.size()); viewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { processSelection(); } }); viewer.getControl().addKeyListener(new KeyAdapter() { @Override public void keyReleased(KeyEvent e) { if (e.character == '\r') processSelection(); } }); viewer.getControl().addFocusListener(new FocusListener() { @Override public void focusLost(FocusEvent e) { if (focusGained) cancelPressed(); } @Override public void focusGained(FocusEvent e) { focusGained = true; } }); viewer.getTable().pack(); return area; }
From source file:com.bdaum.zoom.ui.internal.dialogs.AutoRuleComponent.java
License:Open Source License
@SuppressWarnings("unused") public AutoRuleComponent(Composite parent, int style, IAdaptable info) { this.info = info; composite = new Composite(parent, SWT.NONE); Layout layout = parent.getLayout();//w w w . ja v a 2 s . c o m if (layout instanceof GridLayout) { GridData layoutData = new GridData(SWT.FILL, SWT.FILL, true, true); layoutData.horizontalSpan = ((GridLayout) layout).numColumns; composite.setLayoutData(layoutData); } composite.setLayout(new GridLayout()); new Label(composite, SWT.NONE).setText(Messages.AutoRuleComponent_collections_expl); CGroup autoGroup = UiUtilities.createGroup(composite, 2, Messages.AutoRuleComponent_title); ruleViewer = new TableViewer(autoGroup, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI | SWT.V_SCROLL); TableViewerColumn col0 = new TableViewerColumn(ruleViewer, SWT.NONE); col0.getColumn().setText(Messages.AutoRuleComponent_name); col0.getColumn().setWidth(100); col0.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof AutoRule) return ((AutoRule) element).getName(); return element.toString(); } }); TableViewerColumn col1 = new TableViewerColumn(ruleViewer, SWT.NONE); col1.getColumn().setText(Messages.AutoRuleComponent_group); col1.getColumn().setWidth(180); col1.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof AutoRule) return ((AutoRule) element).getQfield().getCategory().toString(); return element.toString(); } }); TableViewerColumn col2 = new TableViewerColumn(ruleViewer, SWT.NONE); col2.getColumn().setText(Messages.AutoRuleComponent_field); col2.getColumn().setWidth(220); col2.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof AutoRule) return ((AutoRule) element).getQfield().getLabel(); return element.toString(); } }); TableViewerColumn col3 = new TableViewerColumn(ruleViewer, SWT.NONE); col3.getColumn().setText(Messages.AutoRuleComponent_type); col3.getColumn().setWidth(160); col3.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof AutoRule) { AutoRule rule = (AutoRule) element; if (rule.hasCustomIntervals()) return Messages.AutoRuleComponent_custom; QueryField qfield = rule.getQfield(); switch (qfield.getAutoPolicy()) { case QueryField.AUTO_DISCRETE: if (qfield.getEnumeration() != null) return Messages.AutoRuleComponent_enum; if (qfield.getType() == QueryField.T_BOOLEAN) return Messages.AutoRuleComponent_bool; return Messages.AutoRuleComponent_discrete; case QueryField.AUTO_LINEAR: return Messages.AutoRuleComponent_linear; case QueryField.AUTO_LOG: return Messages.AutoRuleComponent_exp; case QueryField.AUTO_CONTAINS: return Messages.AutoRuleComponent_arbitrary; case QueryField.AUTO_SELECT: return Messages.AutoRuleComponent_multiple; } } return element.toString(); } }); TableViewerColumn col4 = new TableViewerColumn(ruleViewer, SWT.NONE); col4.getColumn().setText(Messages.AutoRuleComponent_parms); col4.getColumn().setWidth(220); col4.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof AutoRule) { AutoRule rule = (AutoRule) element; QueryField qfield = rule.getQfield(); switch (qfield.getAutoPolicy()) { case QueryField.AUTO_CONTAINS: case QueryField.AUTO_SELECT: return rule.getValueSpec(); case QueryField.AUTO_DISCRETE: if (qfield.getEnumeration() != null) return rule.getEnumerationSpec(); if (qfield.getType() == QueryField.T_BOOLEAN) return Format.booleanFormatter.toString(Boolean.parseBoolean(rule.getBooleanSpec())); //$FALL-THROUGH$ default: return rule.getIntervalSpec(); } } return element.toString(); } }); ruleViewer.getTable().setHeaderVisible(true); ruleViewer.getTable().setLinesVisible(true); GridData layoutData = new GridData(SWT.FILL, SWT.FILL, true, true); layoutData.heightHint = (style & SWT.SHORT) != 0 ? 150 : 300; ruleViewer.getTable().setLayoutData(layoutData); ruleViewer.setContentProvider(ArrayContentProvider.getInstance()); new SortColumnManager(ruleViewer, new int[] { SWT.UP, SWT.UP, SWT.UP, SWT.NONE, SWT.NONE }, 0); ruleViewer.setComparator(ZViewerComparator.INSTANCE); ruleViewer.getControl().addKeyListener(new KeyAdapter() { @Override public void keyPressed(KeyEvent e) { if (e.keyCode == SWT.CTRL) cntrlDwn = true; } @Override public void keyReleased(KeyEvent e) { if (e.keyCode == SWT.CTRL) cntrlDwn = false; } }); ruleViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { updateButtons(); if (cntrlDwn) { if (editAutoButton.isEnabled()) editRule(); cntrlDwn = false; } } }); ruleViewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { if (!cntrlDwn && editAutoButton.isEnabled()) editRule(); } }); ruleViewer.setInput(autoRules); Composite autoButtonBar = new Composite(autoGroup, SWT.NONE); autoButtonBar.setLayoutData(new GridData(SWT.BEGINNING, SWT.BEGINNING, false, false)); autoButtonBar.setLayout(new GridLayout(1, false)); addAutoButton = new Button(autoButtonBar, SWT.PUSH); addAutoButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); addAutoButton.setText(Messages.AutoRuleComponent_add); addAutoButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { AutoRuleDialog dialog = new AutoRuleDialog(parent.getShell(), null, autoRules); if (dialog.open() == AutoRuleDialog.OK) { AutoRule rule = dialog.getRule(); autoRules.add(rule); ruleViewer.add(rule); ruleViewer.setSelection(new StructuredSelection(rule)); fillAccelViewer(); updateButtons(); } } }); editAutoButton = new Button(autoButtonBar, SWT.PUSH); editAutoButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); editAutoButton.setText(Messages.AutoRuleComponent_edit); editAutoButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { editRule(); } }); removeAutoButton = new Button(autoButtonBar, SWT.PUSH); removeAutoButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); removeAutoButton.setText(Messages.AutoRuleComponent_remove); removeAutoButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { @SuppressWarnings("unchecked") Iterator<AutoRule> it = ruleViewer.getStructuredSelection().iterator(); while (it.hasNext()) { AutoRule rule = it.next(); int index = autoRules.indexOf(rule); autoRules.remove(rule); if (index >= autoRules.size()) --index; ruleViewer.remove(rule); if (index >= 0) ruleViewer.setSelection(new StructuredSelection(autoRules.get(index))); } fillAccelViewer(); updateButtons(); } }); new Label(autoButtonBar, SWT.SEPARATOR | SWT.HORIZONTAL) .setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); applyButton = new Button(autoButtonBar, SWT.PUSH); applyButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); applyButton.setText(Messages.AutoRuleComponent_apply); applyButton.setToolTipText(Messages.AutoRuleComponent_apply_tooltip); applyButton.addSelectionListener(new SelectionAdapter() { @SuppressWarnings("unchecked") @Override public void widgetSelected(SelectionEvent e) { IStructuredSelection sel = ruleViewer.getStructuredSelection(); if (!sel.isEmpty()) OperationJob.executeSlaveOperation( new AutoRuleOperation(new ArrayList<AutoRule>(sel.toList()), null, null), info, false); } }); CGroup accelGroup = UiUtilities.createGroup(composite, 1, Messages.AutoRuleComponent_accel_candidates); new Label(accelGroup, SWT.WRAP).setText(Messages.AutoRuleComponent_accel_msg); accelViewer = CheckboxTableViewer.newCheckList(accelGroup, SWT.V_SCROLL | SWT.BORDER); accelViewer.getTable().setLayoutData(new GridData(400, (style & SWT.SHORT) != 0 ? 50 : 80)); accelViewer.setContentProvider(ArrayContentProvider.getInstance()); accelViewer.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof QueryField) return ((QueryField) element).getLabel(); return element.toString(); } }); accelViewer.setComparator(ZViewerComparator.INSTANCE); updateButtons(); }
From source file:com.bdaum.zoom.ui.internal.dialogs.CodesDialog.java
License:Open Source License
@SuppressWarnings("unused") private void createRecentViewer(Composite composite) { recentViewer = new TableViewer(composite, SWT.SINGLE | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.BORDER); GridData layoutData = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1); layoutData.heightHint = 100;//w w w . j a v a2 s .c om recentViewer.getTable().setLayoutData(layoutData); recentViewer.getTable().setLinesVisible(true); recentViewer.getTable().setHeaderVisible(true); if (!parser.isByName()) createTableColumn(recentViewer, 120, Messages.CodesDialog_code, 0); createTableColumn(recentViewer, 150, Messages.CodesDialog_name, 1); createTableColumn(recentViewer, 300, Messages.CodesDialog_explanation, 2); recentViewer.setContentProvider(ArrayContentProvider.getInstance()); if (parser.isByName()) new SortColumnManager(recentViewer, new int[] { SWT.UP, SWT.UP }, 0); else new SortColumnManager(recentViewer, new int[] { SWT.UP, SWT.UP, SWT.UP }, 1); recentViewer.setComparator(ZViewerComparator.INSTANCE); recentViewer.setFilters(new ViewerFilter[] { new TopicFilter(false, exclusions) }); recentViewer.addSelectionChangedListener(selectionChangedListener); recentViewer.addDoubleClickListener(doubleClickListener); ZColumnViewerToolTipSupport.enableFor(recentViewer); }
From source file:com.bdaum.zoom.ui.internal.dialogs.CodesDialog.java
License:Open Source License
@SuppressWarnings("unused") private void createTopicViewer(Composite composite) { ExpandCollapseGroup expandCollapseGroup = null; if (parser.hasSubtopics()) { expandCollapseGroup = new ExpandCollapseGroup(composite, SWT.NONE); TreeViewer treeViewer = new TreeViewer(composite, SWT.SINGLE | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.BORDER); expandCollapseGroup.setViewer((TreeViewer) topicViewer); treeViewer.getTree().setLinesVisible(true); treeViewer.getTree().setHeaderVisible(true); if (!parser.isByName()) createTreeColumn(treeViewer, 120, Messages.CodesDialog_code, 0); createTreeColumn(treeViewer, 150, Messages.CodesDialog_name, 1); createTreeColumn(treeViewer, 300, Messages.CodesDialog_explanation, 2); UiUtilities.installDoubleClickExpansion(treeViewer); topicViewer = treeViewer;// w w w.java2 s . c o m } else { new Label(composite, SWT.NONE); TableViewer tableViewer = new TableViewer(composite, SWT.SINGLE | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.BORDER); tableViewer.getTable().setLinesVisible(true); tableViewer.getTable().setHeaderVisible(true); if (!parser.isByName()) createTableColumn(tableViewer, 120, Messages.CodesDialog_code, 0); createTableColumn(tableViewer, 150, Messages.CodesDialog_name, 1); createTableColumn(tableViewer, 300, Messages.CodesDialog_explanation, 2); tableViewer.addDoubleClickListener(doubleClickListener); topicViewer = tableViewer; } GridData layoutData = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1); layoutData.heightHint = 300; topicViewer.getControl().setLayoutData(layoutData); topicViewer.setContentProvider(new TopicContentProvider()); if (parser.isByName()) new SortColumnManager(recentViewer, new int[] { SWT.UP, SWT.UP }, 0); else new SortColumnManager(recentViewer, new int[] { SWT.UP, SWT.UP, SWT.UP }, 1); topicViewer.setComparator(ZViewerComparator.INSTANCE); topicViewer.setFilters(new ViewerFilter[] { new TopicFilter(true, exclusions) }); topicViewer.addSelectionChangedListener(selectionChangedListener); ZColumnViewerToolTipSupport.enableFor(topicViewer); }
From source file:com.bdaum.zoom.ui.internal.dialogs.ConfigureColumnsDialog.java
License:Open Source License
private TableViewer createColumnTable(Composite composite) { final TableViewer viewer = new TableViewer(composite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); viewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); viewer.setLabelProvider(ZColumnLabelProvider.getDefaultInstance()); viewer.setContentProvider(ArrayContentProvider.getInstance()); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { updateButtons();// ww w .j av a2 s . com } }); return viewer; }
From source file:com.bdaum.zoom.ui.internal.dialogs.DesignSelectionDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { Composite area = (Composite) super.createDialogArea(parent); Composite comp = new Composite(area, SWT.NONE); comp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); comp.setLayout(new GridLayout(2, false)); Composite viewComp = new Composite(comp, SWT.NONE); viewComp.setLayout(new GridLayout()); viewComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); viewer = new TableViewer(viewComp, SWT.V_SCROLL | SWT.SINGLE | SWT.BORDER); GridData data = new GridData(SWT.FILL, SWT.FILL, true, true); data.widthHint = 200;/*from w ww. j av a 2 s .co m*/ viewer.getControl().setLayoutData(data); viewer.setContentProvider(ArrayContentProvider.getInstance()); viewer.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof WebGalleryImpl) return ((WebGalleryImpl) element).getName(); return element.toString(); } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { updatedButtons(); canvas.redraw(); } }); viewer.setInput(elements); clearButton = new Button(viewComp, SWT.PUSH); clearButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); clearButton.setText(Messages.DesignSelectionDialog_delete); clearButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { IStructuredSelection selection = viewer.getStructuredSelection(); Object first = selection.getFirstElement(); if (first instanceof WebGalleryImpl) { String name = ((WebGalleryImpl) first).getName(); if (AcousticMessageDialog.openConfirm(getShell(), Messages.DesignSelectionDialog_delete_design, NLS.bind(Messages.DesignSelectionDialog_do_you_really_want_to_delete, name))) { viewer.remove(first); dbManager.safeTransaction(first, null); } } } }); Composite previewComp = new Composite(comp, SWT.NONE); previewComp.setLayout(new GridLayout()); canvas = new Canvas(previewComp, SWT.DOUBLE_BUFFERED | SWT.BORDER); canvas.setLayoutData(new GridData(300, 300)); canvas.addPaintListener(this); canvas.redraw(); return area; }