List of usage examples for org.eclipse.jface.viewers ColumnPixelData ColumnPixelData
public ColumnPixelData(int widthInPixels, boolean resizable)
From source file:au.gov.ga.earthsci.common.ui.color.ColorMapEditor.java
License:Apache License
private void addEntriesList(Composite parent) { Composite tableContainer = new Composite(parent, SWT.NONE); GridData gd = new GridData(GridData.FILL_BOTH); gd.horizontalSpan = 2;/* ww w . j ava2s. c o m*/ tableContainer.setLayoutData(gd); TableColumnLayout layout = new TableColumnLayout(); tableContainer.setLayout(layout); // Not sure why, but columns and column label providers only work when SWT.VIRTUAL is used entriesTable = new TableViewer(tableContainer, SWT.SINGLE | SWT.FULL_SELECTION | SWT.BORDER | SWT.VIRTUAL); entriesTable.setContentProvider(ArrayContentProvider.getInstance()); entriesTable.getTable().setHeaderVisible(true); entriesTable.getTable().setLinesVisible(true); entriesTable.setInput(map.getEntries().entrySet()); TableViewerColumn valueColumn = new TableViewerColumn(entriesTable, SWT.NONE); valueColumn.getColumn().setText(Messages.ColorMapEditor_TableValueColumnLabel); valueColumn.setLabelProvider(new ColumnLabelProvider() { @SuppressWarnings("unchecked") @Override public String getText(Object element) { Double value = ((Entry<Double, Color>) element).getKey(); String result = "" + value; //$NON-NLS-1$ if (map.isPercentageBased()) { result += " (" + (int) (value * 100) + "%)"; //$NON-NLS-1$ //$NON-NLS-2$ } return result; } }); layout.setColumnData(valueColumn.getColumn(), new ColumnPixelData(80, false)); TableViewerColumn colorNameColumn = new TableViewerColumn(entriesTable, SWT.NONE); colorNameColumn.getColumn().setText(Messages.ColorMapEditor_TableColorColumnLabel); colorNameColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { Color color = getColorFromElement(element); return "RGBA(" + color.getRed() + ", " //$NON-NLS-1$ //$NON-NLS-2$ + color.getGreen() + ", " //$NON-NLS-1$ + color.getBlue() + ", " //$NON-NLS-1$ + color.getAlpha() + ")"; //$NON-NLS-1$ } @Override public String getToolTipText(Object element) { return "#" + getColorKey(getColorFromElement(element)); //$NON-NLS-1$ } @SuppressWarnings("unchecked") private Color getColorFromElement(Object element) { return ((Entry<Double, Color>) element).getValue(); } private String getColorKey(Color color) { return Integer.toHexString(color.getRGB()); } }); layout.setColumnData(colorNameColumn.getColumn(), new ColumnWeightData(100, false)); ColumnViewerToolTipSupport.enableFor(entriesTable, ToolTip.NO_RECREATE); }
From source file:com.aptana.theme.preferences.ThemePreferencePage.java
License:Open Source License
private void createTokenEditTable(Composite composite) { // FIXME allow drag and drop to sort items in the table! Composite comp = new Composite(composite, SWT.NONE); GridData gridData = new GridData(SWT.FILL, SWT.FILL, true, true); gridData.heightHint = 200;/*from w w w . j a va2 s. c o m*/ comp.setLayoutData(gridData); TableColumnLayout layout = new TableColumnLayout(); comp.setLayout(layout); final Table table = new Table(comp, SWT.FULL_SELECTION | SWT.SINGLE | SWT.V_SCROLL); table.setHeaderVisible(true); table.setLinesVisible(false); // Hack to force a specific row height table.addListener(SWT.MeasureItem, new Listener() { public void handleEvent(Event event) { event.height = ROW_HEIGHT; } }); // Hack to draw the underline in first column table.addListener(SWT.PaintItem, new Listener() { public void handleEvent(Event event) { if ((event.detail & SWT.FOREGROUND) != 0 && event.index == 0) { TableItem item = (TableItem) event.item; ThemeRule token = (ThemeRule) item.getData(); if ((token.getTextAttribute().style & TextAttribute.UNDERLINE) != 0) { int y = event.getBounds().y + event.getBounds().height - 6; int x2 = event.getBounds().width; Color oldFG = event.gc.getForeground(); Color fg; RGBa rgb = token.getTextAttribute().foreground; if (rgb == null) { fg = ThemePlugin.getDefault().getColorManager().getColor(getTheme().getForeground()); } else { fg = ThemePlugin.getDefault().getColorManager().getColor(rgb.toRGB()); } event.gc.setForeground(fg); event.gc.drawLine(0, y, x2, y); event.gc.setForeground(oldFG); event.detail &= ~SWT.FOREGROUND; } } } }); Listener selectionOverride = new Listener() { public void handleEvent(Event event) { if ((event.detail & SWT.SELECTED) != 0) { Scrollable scrollable = (Scrollable) event.widget; Rectangle clientArea = scrollable.getClientArea(); int clientWidth = clientArea.width; GC gc = event.gc; Color oldBackground = gc.getBackground(); gc.setBackground(ThemePlugin.getDefault().getColorManager() .getColor(getTheme().getSelectionAgainstBG())); gc.fillRectangle(clientArea.x, event.y, clientWidth, event.height); gc.setBackground(oldBackground); event.detail &= ~SWT.SELECTED; event.detail &= ~SWT.BACKGROUND; // force foreground color. Otherwise on dark themes we get black FG (all the time on Win, on // non-focus for Mac) gc.setForeground( ThemePlugin.getDefault().getColorManager().getColor(getTheme().getForeground())); } } }; table.addListener(SWT.EraseItem, selectionOverride); tableViewer = new TableViewer(table); tableViewer.setContentProvider(new IStructuredContentProvider() { private Theme theme; public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { this.theme = (Theme) newInput; } public void dispose() { } public Object[] getElements(Object inputElement) { return theme.getTokens().toArray(); } }); tableViewer.setLabelProvider(new TokenLabelProvider()); tableViewer.getTable().addMouseListener(new MouseAdapter() { @Override public void mouseDown(MouseEvent e) { Table table = tableViewer.getTable(); // If user is clicking in the FG/BG column when it's empty, pop open a color dialog int fgColX = table.getColumn(0).getWidth(); // scope col width int fgColWidth = table.getColumn(1).getWidth(); // fg col width int bgColX = fgColX + fgColWidth; int bgColWidth = table.getColumn(2).getWidth() + 2; if (e.x > fgColX && e.x < (fgColX + fgColWidth)) { // user clicked in FG column ColorDialog colorDialog = new ColorDialog(table.getShell()); colorDialog.setRGB(getTheme().getForeground()); RGB newRGB = colorDialog.open(); if (newRGB == null) { return; // no color selected, don't change a thing! } TableItem tableItem = table.getItem(new Point(e.x, e.y)); ThemeRule token = (ThemeRule) tableItem.getData(); int index = table.indexOf(tableItem); getTheme().updateRule(index, token.updateFG(new RGBa(newRGB))); } else if (e.x > bgColX && e.x < (bgColX + bgColWidth)) // is user clicking in the BG column? { ColorDialog colorDialog = new ColorDialog(table.getShell()); colorDialog.setRGB(getTheme().getBackground()); RGB newRGB = colorDialog.open(); if (newRGB == null) { return; // no color selected, don't change a thing! } TableItem tableItem = table.getItem(new Point(e.x, e.y)); ThemeRule token = (ThemeRule) tableItem.getData(); int index = table.indexOf(tableItem); getTheme().updateRule(index, token.updateBG(new RGBa(newRGB))); } else { return; } tableViewer.refresh(); addCustomTableEditorControls(); } }); TableViewerColumn column = new TableViewerColumn(tableViewer, SWT.NONE); final TableColumn tokenName = column.getColumn(); tokenName.setText("Element"); //$NON-NLS-1$ layout.setColumnData(tokenName, new ColumnWeightData(100, true)); column.setLabelProvider(new ColumnLabelProvider() { public String getText(Object element) { ThemeRule token = (ThemeRule) element; return token.getName(); } public Color getForeground(Object element) { ThemeRule token = (ThemeRule) element; // TODO How do we handle alpha? RGBa fg = token.getTextAttribute().foreground; if (fg == null) return ThemePlugin.getDefault().getColorManager().getColor(getTheme().getForeground()); return ThemePlugin.getDefault().getColorManager().getColor(fg.toRGB()); } public Color getBackground(Object element) { ThemeRule token = (ThemeRule) element; // TODO How do we handle alpha? RGBa bg = token.getTextAttribute().background; if (bg == null) return ThemePlugin.getDefault().getColorManager().getColor(getTheme().getBackground()); return ThemePlugin.getDefault().getColorManager().getColor(bg.toRGB()); } public Font getFont(Object element) { ThemeRule token = (ThemeRule) element; if (token.getTextAttribute().style == 0) // TODO Limit to only checking for bold or italic return fFont; return lazyFont(fFont, token.getTextAttribute().style); } }); column.setEditingSupport(new EditingSupport(tableViewer) { private TextCellEditor cellEditor; @Override protected void setValue(Object element, Object value) { ThemeRule token = (ThemeRule) element; String newName = (String) value; if (newName.equals(token.getName())) { return; } // update the token in the theme int index = getTheme().getTokens().indexOf(token); getTheme().updateRule(index, token.setName(newName)); tableViewer.refresh(); } @Override protected Object getValue(Object element) { ThemeRule token = (ThemeRule) element; return token.getName(); } @Override protected CellEditor getCellEditor(Object element) { ThemeRule token = (ThemeRule) element; cellEditor = new TextCellEditor(table); cellEditor.setValue(token.getName()); return cellEditor; } @Override protected boolean canEdit(Object element) { return true; } }); column = new TableViewerColumn(tableViewer, SWT.NONE); final TableColumn foreground = column.getColumn(); foreground.setResizable(false); foreground.setText(Messages.ThemePreferencePage_ForegroundColumnLabel); layout.setColumnData(foreground, new ColumnPixelData(30, false)); column.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ""; //$NON-NLS-1$ } }); column = new TableViewerColumn(tableViewer, SWT.NONE); final TableColumn background = column.getColumn(); background.setResizable(false); background.setText(Messages.ThemePreferencePage_BackgroundColumnLabel); layout.setColumnData(background, new ColumnPixelData(30, false)); column.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ""; //$NON-NLS-1$ } }); final TableColumn fontStyle = new TableColumn(table, SWT.NONE); fontStyle.setResizable(false); fontStyle.setText(Messages.ThemePreferencePage_FontStyleColumnLabel); layout.setColumnData(fontStyle, new ColumnPixelData(75, false)); Composite editTokenList = new Composite(composite, SWT.NONE); editTokenList.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); GridLayout grid = new GridLayout(2, false); editTokenList.setLayout(grid); Composite buttons = new Composite(editTokenList, SWT.NONE); GridLayout buttonsLayout = new GridLayout(2, true); buttonsLayout.marginWidth = 0; buttonsLayout.horizontalSpacing = 0; buttons.setLayout(buttonsLayout); fAddTokenButton = new Button(buttons, SWT.PUSH | SWT.FLAT); fAddTokenButton.setBounds(0, 0, 16, 16); fAddTokenButton.setLayoutData(new GridData(GridData.FILL_BOTH)); fAddTokenButton.setText(Messages.ThemePreferencePage_AddTokenLabel); fAddTokenButton.addSelectionListener(this); fRemoveTokenButton = new Button(buttons, SWT.PUSH | SWT.FLAT); fRemoveTokenButton.setLayoutData(new GridData(GridData.FILL_BOTH)); fRemoveTokenButton.setText(Messages.ThemePreferencePage_RemoveTokenLabel); fRemoveTokenButton.addSelectionListener(this); Composite textField = new Composite(editTokenList, SWT.NONE); textField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); textField.setLayout(new GridLayout(2, false)); Label addTokenLabel = new Label(textField, SWT.RIGHT); addTokenLabel.setText(Messages.ThemePreferencePage_ScopeSelectoreLabel); fScopeText = new Combo(textField, SWT.SINGLE | SWT.BORDER); GridData data = new GridData(GridData.FILL_HORIZONTAL); fScopeText.setLayoutData(data); for (String preset : tokenTypeNames) { fScopeText.add(preset); } table.addSelectionListener(this); fScopeSelectorDecoration = new ControlDecoration(fScopeText, SWT.RIGHT); fScopeText.addModifyListener(new ModifyListener() { public void modifyText(ModifyEvent e) { // Update the scope selector for the current token! TableItem[] selection = table.getSelection(); if (selection == null || selection.length == 0) { return; } TableItem item = selection[0]; ThemeRule rule = (ThemeRule) item.getData(); String scopeSelectorText = fScopeText.getText(); // Validate the value isn't a duplicate! ScopeSelector selector = new ScopeSelector(scopeSelectorText); ThemeRule match = getTheme().getRuleForSelector(selector); if (scopeSelectorText.length() > 0 && match != null && match != rule) { FieldDecoration dec = FieldDecorationRegistry.getDefault() .getFieldDecoration(FieldDecorationRegistry.DEC_WARNING); fScopeSelectorDecoration.setImage(dec.getImage()); fScopeSelectorDecoration.setDescriptionText(MessageFormat .format(Messages.ThemePreferencePage_DuplicateScopeSelectorRules, match.getName())); fScopeText.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_RED)); } else { fScopeSelectorDecoration.setDescriptionText(null); fScopeSelectorDecoration.setImage(null); fScopeText.setForeground(null); } int index = table.indexOf(item); ThemeRule newRule = rule.setScopeSelector(selector); getTheme().updateRule(index, newRule); item.setData(newRule); } }); addDNDToTable(table); }
From source file:com.archimatetool.editor.propertysections.UserPropertiesSection.java
License:Open Source License
private void createTableControl(Composite parent) { // Table Composite Composite tableComp = createTableComposite(parent, SWT.NULL); fTableLayout = (UpdatingTableColumnLayout) tableComp.getLayout(); // Table Viewer fTableViewer = new TableViewer(tableComp, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION); fTableViewer.getTable().setHeaderVisible(true); fTableViewer.getTable().setLinesVisible(true); addDragSupport();//from ww w.j a v a 2s. com addDropSupport(); // Help ID on table PlatformUI.getWorkbench().getHelpSystem().setHelp(fTableViewer.getTable(), HELP_ID); // Columns TableViewerColumn columnBlank = new TableViewerColumn(fTableViewer, SWT.NONE, 0); fTableLayout.setColumnData(columnBlank.getColumn(), new ColumnPixelData(24, false)); TableViewerColumn columnKey = new TableViewerColumn(fTableViewer, SWT.NONE, 1); columnKey.getColumn().setText(Messages.UserPropertiesSection_0); fTableLayout.setColumnData(columnKey.getColumn(), new ColumnWeightData(20, true)); columnKey.setEditingSupport(new KeyEditingSupport(fTableViewer)); // Click on Key Table Header columnKey.getColumn().addListener(SWT.Selection, new Listener() { @Override public void handleEvent(Event event) { sortKeys(); } }); TableViewerColumn columnValue = new TableViewerColumn(fTableViewer, SWT.NONE, 2); columnValue.getColumn().setText(Messages.UserPropertiesSection_1); fTableLayout.setColumnData(columnValue.getColumn(), new ColumnWeightData(80, true)); columnValue.setEditingSupport(new ValueEditingSupport(fTableViewer)); // Content Provider fTableViewer.setContentProvider(new IStructuredContentProvider() { public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } public void dispose() { } public Object[] getElements(Object inputElement) { return ((IProperties) inputElement).getProperties().toArray(); } }); // Label Provider fTableViewer.setLabelProvider(new LabelCellProvider()); // Toolbar ToolBar toolBar = new ToolBar(parent, SWT.FLAT | SWT.VERTICAL); GridDataFactory.fillDefaults().align(SWT.END, SWT.TOP).applyTo(toolBar); ToolBarManager toolBarmanager = new ToolBarManager(toolBar); // New Property fActionNewProperty = new Action(Messages.UserPropertiesSection_2) { @Override public void run() { if (isAlive()) { int index = -1; IProperty selected = (IProperty) ((IStructuredSelection) fTableViewer.getSelection()) .getFirstElement(); if (selected != null) { index = fPropertiesElement.getProperties().indexOf(selected) + 1; } IProperty property = IArchimateFactory.eINSTANCE.createProperty(); getCommandStack() .execute(new NewPropertyCommand(fPropertiesElement.getProperties(), property, index)); fTableViewer.editElement(property, 1); } } @Override public String getToolTipText() { return getText(); } @Override public ImageDescriptor getImageDescriptor() { return IArchimateImages.ImageFactory.getImageDescriptor(IArchimateImages.ICON_PLUS); } }; // New Multiple Properties fActionNewMultipleProperty = new Action(Messages.UserPropertiesSection_3) { @Override public void run() { if (isAlive()) { MultipleAddDialog dialog = new MultipleAddDialog(fPage.getSite().getShell()); if (dialog.open() == Window.OK) { getCommandStack().execute(dialog.getCommand()); } } } @Override public String getToolTipText() { return getText(); } @Override public ImageDescriptor getImageDescriptor() { return IArchimateImages.ImageFactory.getImageDescriptor(IArchimateImages.ICON_MUTIPLE); } }; // Remove Property fActionRemoveProperty = new Action(Messages.UserPropertiesSection_4) { @Override public void run() { if (isAlive()) { CompoundCommand compoundCmd = new EObjectNonNotifyingCompoundCommand(fPropertiesElement) { @Override public String getLabel() { return getCommands().size() > 1 ? Messages.UserPropertiesSection_5 : Messages.UserPropertiesSection_6; } }; for (Object o : ((IStructuredSelection) fTableViewer.getSelection()).toList()) { Command cmd = new RemovePropertyCommand(fPropertiesElement.getProperties(), (IProperty) o); compoundCmd.add(cmd); } getCommandStack().execute(compoundCmd); } } @Override public String getToolTipText() { return getText(); } @Override public ImageDescriptor getImageDescriptor() { return IArchimateImages.ImageFactory.getImageDescriptor(IArchimateImages.ICON_SMALL_X); } }; fActionRemoveProperty.setEnabled(false); // Manage fActionShowKeyEditor = new Action(Messages.UserPropertiesSection_7) { @Override public void run() { if (isAlive()) { UserPropertiesManagerDialog dialog = new UserPropertiesManagerDialog(fPage.getSite().getShell(), getArchimateModel()); dialog.open(); } } @Override public String getToolTipText() { return getText(); } @Override public ImageDescriptor getImageDescriptor() { return IArchimateImages.ImageFactory.getImageDescriptor(IArchimateImages.ICON_COG); } }; toolBarmanager.add(fActionNewProperty); toolBarmanager.add(fActionNewMultipleProperty); toolBarmanager.add(fActionRemoveProperty); toolBarmanager.add(fActionShowKeyEditor); toolBarmanager.update(true); /* * Selection Listener */ fTableViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { fActionRemoveProperty.setEnabled(!event.getSelection().isEmpty()); } }); /* * Table Double-click on cell */ fTableViewer.getTable().addListener(SWT.MouseDoubleClick, new Listener() { @Override public void handleEvent(Event event) { // Get Table item TableItem item = fTableViewer.getTable().getItem(new Point(event.x, event.y)); // Double-click into empty table creates new Property if (item == null) { fActionNewProperty.run(); } // Handle selected item property double-clicked else { if (item.getData() instanceof IProperty) { handleDoubleClick((IProperty) item.getData()); } } } }); hookContextMenu(); }
From source file:com.hudren.woodpile.views.SessionView.java
License:Open Source License
private void createTableViewer(final Composite parent) { viewer = new TableViewer(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI | SWT.FULL_SELECTION); viewer.setUseHashlookup(true);//w w w . jav a2 s .c o m final Table table = viewer.getTable(); final TableLayout layout = new TableLayout(); table.setLayout(layout); // table.setFont( JFaceResources.getTextFont() ); if (memento != null) { // restore columns width final IMemento children[] = memento.getChildren(TAG_COLUMN); if (children != null) { for (final IMemento element : children) { Integer val = element.getInteger(TAG_NUMBER); if (val != null) { final int index = val.intValue(); val = element.getInteger(TAG_WIDTH); if (val != null) { columnLayouts[index] = new ColumnPixelData(val.intValue(), true); } } } } } int i = 0; iconColumn = new TableColumn(table, SWT.CENTER); iconColumn.setResizable(columnLayouts[i].resizable); layout.addColumnData(columnLayouts[i++]); timestampColumn = new TableColumn(table, SWT.LEFT); timestampColumn.setText("Time"); timestampColumn.setResizable(columnLayouts[i].resizable); layout.addColumnData(columnLayouts[i++]); serverColumn = new TableColumn(table, SWT.LEFT); serverColumn.setText("Component"); serverColumn.setResizable(columnLayouts[i].resizable); layout.addColumnData(columnLayouts[i++]); levelColumn = new TableColumn(table, SWT.LEFT); levelColumn.setText("Level"); levelColumn.setResizable(columnLayouts[i].resizable); layout.addColumnData(columnLayouts[i++]); loggerColumn = new TableColumn(table, SWT.LEFT); loggerColumn.setText("Logger"); loggerColumn.setResizable(columnLayouts[i].resizable); layout.addColumnData(columnLayouts[i++]); messageColumn = new TableColumn(table, SWT.LEFT); messageColumn.setText("Message"); layout.addColumnData(columnLayouts[i++]); throwableColumn = new TableColumn(table, SWT.LEFT); throwableColumn.setText("Throwable"); throwableColumn.setResizable(columnLayouts[i].resizable); layout.addColumnData(columnLayouts[i++]); threadColumn = new TableColumn(table, SWT.LEFT); threadColumn.setText("Thread"); threadColumn.setResizable(columnLayouts[i].resizable); layout.addColumnData(columnLayouts[i++]); hostColumn = new TableColumn(table, SWT.LEFT); hostColumn.setText("Host"); hostColumn.setResizable(columnLayouts[i].resizable); layout.addColumnData(columnLayouts[i++]); table.setHeaderVisible(true); table.setLinesVisible(false); viewer.setContentProvider(contentProvider = new SessionViewContentProvider(this)); viewer.setLabelProvider(labelProvider = new SessionViewLabelProvider(this)); viewer.addFilter(categoryFilter = new CategoryFilter(contentProvider)); viewer.addFilter(zoomFilter = new ZoomFilter()); viewer.addFilter(levelFilter); viewer.setInput(WoodpilePlugin.getDefault().getCurrentSession()); getSite().setSelectionProvider(viewer); }
From source file:com.microsoft.tfs.client.common.ui.wit.form.controls.test.TestStepsControl.java
License:Open Source License
/** * Create the steps table.//from w ww. java 2s .c om * * @param composite * the parent layout composite * @param workItem * the test case work item * * @return the allocated table viewer */ private TableViewer createStepsTable(final Composite composite, final WorkItem workItem) { final TableViewer viewer = new TableViewer(composite, SWT.BORDER | SWT.FULL_SELECTION); GridDataBuilder.newInstance().align(SWT.FILL, SWT.FILL).grab(true, true).span(1, 1).minHeight(75) .applyTo(viewer.getTable()); final Table table = viewer.getTable(); table.setHeaderVisible(true); table.setLinesVisible(true); final TableLayout tableLayout = new TableLayout(); table.setLayout(tableLayout); tableLayout.addColumnData(new ColumnPixelData(60, true)); final TableColumn column1 = new TableColumn(table, SWT.NONE); column1.setImage(TestStepUtil.imageHelper.getImage("images/common/attachment.gif")); //$NON-NLS-1$ column1.setResizable(true); tableLayout.addColumnData(new ColumnWeightData(10, true)); final TableColumn column2 = new TableColumn(table, SWT.NONE); column2.setText(Messages.getString("TestStepsControl.ColumnNameAction")); //$NON-NLS-1$ column2.setResizable(true); tableLayout.addColumnData(new ColumnWeightData(8, true)); final TableColumn column3 = new TableColumn(table, SWT.NONE); column3.setText(Messages.getString("TestStepsControl.ColumnNameExpectedResult")); //$NON-NLS-1$ column3.setResizable(true); viewer.setContentProvider(new TestStepContentProvider()); viewer.setLabelProvider(new TestStepLabelProvider()); viewer.setInput(workItem); return viewer; }
From source file:com.runwaysdk.manager.widgets.PaginatedTableView.java
License:Open Source License
private TableLayout createTableLayout(List<MdAttributeDAOIF> mdAttributes) { TableLayout layout = new TableLayout(); int size = mdAttributes.size(); for (int i = 0; i < size; i++) { layout.addColumnData(new ColumnPixelData(DEFAULT_COLUMN_SIZE, true)); }//from w w w .j av a 2 s . co m return layout; }
From source file:com.softlanding.rse.extensions.spooledfiles.SpooledFilesTableViewer.java
License:Open Source License
private void createColumns() { SelectionListener headerListener = new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { // column selected - need to sort int column = table.indexOf((TableColumn) e.widget); SpooledFilesSorter oldSorter = (SpooledFilesSorter) viewer.getSorter(); if (oldSorter != null && column == oldSorter.getColumnNumber()) { oldSorter.setReversed(!oldSorter.isReversed()); viewer.refresh();//from www .ja va 2s.co m } else { viewer.setSorter(new SpooledFilesSorter(column)); } } }; TableLayout layout = new TableLayout(); table.setLayout(layout); table.setHeaderVisible(true); for (int i = 0; i < columnHeaders.length; i++) { int w = ExtensionsPlugin.getDefault().getPreferenceStore().getInt(tableID + i); if (w != 0) { columnLayouts[i] = new ColumnPixelData(w, true); } } for (int i = 0; i < columnHeaders.length; i++) { layout.addColumnData(columnLayouts[i]); TableColumn tc = new TableColumn(table, SWT.NONE, i); tc.setResizable(columnLayouts[i].resizable); tc.setText(columnHeaders[i]); tc.addSelectionListener(headerListener); } table.setSize(table.computeSize(SWT.DEFAULT, SWT.DEFAULT)); }
From source file:com.vectrace.MercurialEclipse.history.MercurialHistoryPage.java
License:Open Source License
private void createTableHistory(Composite parent) { Composite composite = new Composite(parent, SWT.NONE); GridLayout layout0 = new GridLayout(); layout0.marginHeight = 0;/*from w ww . j a v a 2 s .c om*/ layout0.marginWidth = 0; composite.setLayout(layout0); GridData data = new GridData(GridData.FILL_BOTH); data.grabExcessVerticalSpace = true; composite.setLayoutData(data); viewer = new GraphLogTableViewer(composite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.VIRTUAL, this); Table changeLogTable = viewer.getTable(); changeLogTable.setLinesVisible(true); changeLogTable.setHeaderVisible(true); GridData gridData = new GridData(GridData.FILL_BOTH); changeLogTable.setLayoutData(gridData); IPreferenceStore store = MercurialEclipsePlugin.getDefault().getPreferenceStore(); if (layout == null) { layout = new TableLayout(); // Get the user-defined column widths from the preferences. int[] preferredWidths = getColumnWidthsFromPrefsIfEnabled(); // We set default widths when there's no widths in the preferences or the user is not // interested in having their custom widths saved. if (preferredWidths == null) { layout.addColumnData(new ColumnWeightData(7, true)); layout.addColumnData(new ColumnWeightData(15, true)); layout.addColumnData(new ColumnWeightData(10, true)); layout.addColumnData(new ColumnWeightData(10, true)); layout.addColumnData(new ColumnWeightData(12, true)); layout.addColumnData(new ColumnWeightData(12, true)); layout.addColumnData(new ColumnWeightData(25, true)); } else { // We found column widths in the preference store. We use them. for (int colIdx = 0; colIdx < NUMBER_OF_COLUMNS; colIdx++) { layout.addColumnData(new ColumnPixelData(preferredWidths[colIdx], true)); } } } changeLogTable.setLayout(layout); for (int i = 0; i < NUMBER_OF_COLUMNS; i++) { TableColumn column = new TableColumn(changeLogTable, i == 0 ? SWT.CENTER : SWT.LEFT); switch (i) { case 0: column.setText(Messages.getString("MercurialHistoryPage.columnHeader.graph")); //$NON-NLS-1$ break; case 1: column.setText(Messages.getString("MercurialHistoryPage.columnHeader.changeset")); //$NON-NLS-1$ break; case 2: column.setText(Messages.getString("MercurialHistoryPage.columnHeader.tag")); //$NON-NLS-1$ break; case 3: column.setText(Messages.getString("MercurialHistoryPage.columnHeader.branch")); //$NON-NLS-1$ break; case 4: column.setText(Messages.getString("MercurialHistoryPage.columnHeader.user")); //$NON-NLS-1$ break; case 5: column.setText(Messages.getString("MercurialHistoryPage.columnHeader.date")); //$NON-NLS-1$ break; case 6: column.setText(Messages.getString("MercurialHistoryPage.columnHeader.summary")); //$NON-NLS-1$ break; default: // If this shows up in the view, then there was a programming error: please update // the number of columns constant. column.setText("ERROR!!!"); //$NON-NLS-1$ break; } // // Listener to be notified of changes in the column width. if (store.getBoolean(PREF_HISTORY_COLUMN_PERSISTENCE)) { column.addControlListener(new ControlListener() { public void controlResized(ControlEvent e) { persistColumnWidths(); } public void controlMoved(ControlEvent e) { // We have no interest in this: the columns aren't defined as moveable. } }); } } viewer.setLabelProvider(new ChangeSetLabelProvider()); viewer.setContentProvider(new ChangeLogContentProvider()); viewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { getCompareWithPreviousAction(); updateActionEnablement(); if (compareWithPrevAction.isEnabled()) { compareWithPrevAction.run(); } } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { if (!gotoText.isVisible()) { return; } IStructuredSelection selection = getSelection(); if (selection.isEmpty()) { return; } gotoText.setText(((MercurialRevision) selection.getFirstElement()).getChangeSet().toString()); gotoText.selectAll(); } }); viewer.getControl().addFocusListener(new FocusAdapter() { @Override public void focusGained(FocusEvent e) { setSelectionProvider(viewer); } }); contributeActions(); }
From source file:de.blizzy.backup.ErrorsDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { Composite composite = (Composite) super.createDialogArea(parent); ((GridLayout) composite.getLayout()).numColumns = 1; TableViewer viewer = new TableViewer(composite, SWT.SINGLE | SWT.FULL_SELECTION | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL); viewer.setContentProvider(new ErrorsContentProvider()); viewer.setLabelProvider(new ErrorsLabelProvider(parent.getDisplay())); Table table = viewer.getTable();/* w ww . j a va 2 s . c o m*/ TableLayout layout = new TableLayout(); table.setLayout(layout); table.setHeaderVisible(true); table.setLinesVisible(true); GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true); gd.widthHint = convertWidthInCharsToPixels(80); gd.heightHint = convertHeightInCharsToPixels(15); table.setLayoutData(gd); TableColumn col = new TableColumn(table, SWT.LEFT); col.setText(Messages.Title_Date); layout.addColumnData(new ColumnPixelData(convertWidthInCharsToPixels(16) + 20, true)); col = new TableColumn(table, SWT.LEFT); col.setText(Messages.Title_FileOrFolder); layout.addColumnData(new ColumnWeightData(40, true)); col = new TableColumn(table, SWT.LEFT); col.setText(Messages.Title_Error); layout.addColumnData(new ColumnWeightData(40, true)); viewer.setInput(errors); return composite; }
From source file:de.byteholder.geoclipse.map.DialogManageOfflineImages.java
License:Open Source License
private void createUI20PartViewer(final Composite parent) { final PixelConverter pixelConverter = new PixelConverter(parent); final TableColumnLayout tableLayout = new TableColumnLayout(); final Composite layoutContainer = new Composite(parent, SWT.NONE); layoutContainer.setLayout(tableLayout); GridDataFactory.fillDefaults()// .grab(true, true).hint(SWT.DEFAULT, pixelConverter.convertHeightInCharsToPixels(13)) .applyTo(layoutContainer);/* ww w .ja v a 2 s . com*/ /* * create table */ final Table table = new Table(layoutContainer, SWT.FULL_SELECTION | SWT.BORDER); table.setLayout(new TableLayout()); table.setHeaderVisible(true); table.setLinesVisible(true); _partViewer = new TableViewer(table); /* * create columns */ TableViewerColumn tvc; TableColumn tvcColumn; // column: map provider tvc = new TableViewerColumn(_partViewer, SWT.LEAD); tvcColumn = tvc.getColumn(); tvcColumn.setText(Messages.Dialog_OfflineArea_Column_MapProvider); tvc.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final PartMP partMp = (PartMP) cell.getElement(); cell.setText(partMp.partMp.getName()); } }); tableLayout.setColumnData(tvcColumn, new ColumnWeightData(100)); // column: existing images tvc = new TableViewerColumn(_partViewer, SWT.TRAIL); tvcColumn = tvc.getColumn(); tvcColumn.setText(Messages.Dialog_OfflineArea_Column_ExistingImages); tvcColumn.setToolTipText(Messages.Dialog_OfflineArea_Column_ExistingImages_Tooltip); tvc.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final PartMP partMp = (PartMP) cell.getElement(); cell.setText(Integer.toString(partMp.existingImages)); } }); tableLayout.setColumnData(tvcColumn, new ColumnPixelData(pixelConverter.convertWidthInCharsToPixels(12), true)); // column: missing images tvc = new TableViewerColumn(_partViewer, SWT.TRAIL); tvcColumn = tvc.getColumn(); tvcColumn.setText(Messages.Dialog_OfflineArea_Column_MissingImages); tvcColumn.setToolTipText(Messages.Dialog_OfflineArea_Column_MissingImages_Tooltip); tvc.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final PartMP partMp = (PartMP) cell.getElement(); cell.setText(Integer.toString(partMp.missingImages)); } }); tableLayout.setColumnData(tvcColumn, new ColumnPixelData(pixelConverter.convertWidthInCharsToPixels(12), true)); /* * create table viewer */ _partViewer.setContentProvider(new PartViewerContentProvicer()); _partViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(final SelectionChangedEvent event) { final StructuredSelection selection = (StructuredSelection) event.getSelection(); if (selection != null) { enableControls(true); } } }); }