Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 280224 Details for
Bug 551999
TableEditor doesn't move with cell
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Modified Snippet126 with extra column to remove items
Snippet126.java (text/plain), 3.51 KB, created by
Thomas Wolf
on 2019-10-10 06:35:28 EDT
(
hide
)
Description:
Modified Snippet126 with extra column to remove items
Filename:
MIME Type:
Creator:
Thomas Wolf
Created:
2019-10-10 06:35:28 EDT
Size:
3.51 KB
patch
obsolete
> >/* > * Table example snippet: place arbitrary controls in a table > * > * For a list of all SWT example snippets see > * http://www.eclipse.org/swt/snippets/ > */ >import org.eclipse.swt.SWT; >import org.eclipse.swt.custom.CCombo; >import org.eclipse.swt.custom.TableEditor; >import org.eclipse.swt.events.SelectionAdapter; >import org.eclipse.swt.events.SelectionEvent; >import org.eclipse.swt.layout.FillLayout; >import org.eclipse.swt.widgets.Button; >import org.eclipse.swt.widgets.Display; >import org.eclipse.swt.widgets.Shell; >import org.eclipse.swt.widgets.Table; >import org.eclipse.swt.widgets.TableColumn; >import org.eclipse.swt.widgets.TableItem; >import org.eclipse.swt.widgets.Text; > >public class Snippet126 { > > private static void hook(TableEditor editor, TableItem item) { > item.addDisposeListener(event -> { > editor.getEditor().dispose(); > editor.dispose(); > }); > } > > public static void main(String[] args) { > Display display = new Display(); > Shell shell = new Shell(display); > shell.setText("Snippet 126"); //$NON-NLS-1$ > shell.setLayout(new FillLayout()); > Table table = new Table(shell, SWT.BORDER | SWT.MULTI); > table.setLinesVisible(true); > for (int i = 0; i < 4; i++) { > TableColumn column = new TableColumn(table, SWT.NONE); > column.setWidth(100); > } > for (int i = 0; i < 12; i++) { > new TableItem(table, SWT.NONE); > } > TableItem[] items = table.getItems(); > for (TableItem thisItem : items) { > TableEditor editor = new TableEditor(table); > CCombo combo = new CCombo(table, SWT.NONE); > combo.setText("CCombo"); //$NON-NLS-1$ > combo.add("item 1"); //$NON-NLS-1$ > combo.add("item 2"); //$NON-NLS-1$ > editor.grabHorizontal = true; > editor.setEditor(combo, thisItem, 0); > hook(editor, thisItem); > editor = new TableEditor(table); > Text text = new Text(table, SWT.NONE); > text.setText("Text"); //$NON-NLS-1$ > editor.grabHorizontal = true; > editor.setEditor(text, thisItem, 1); > hook(editor, thisItem); > editor = new TableEditor(table); > Button button = new Button(table, SWT.CHECK); > button.pack(); > editor.minimumWidth = button.getSize().x; > editor.horizontalAlignment = SWT.LEFT; > editor.setEditor(button, thisItem, 2); > hook(editor, thisItem); > editor = new TableEditor(table); > button = new Button(table, SWT.CHECK); > button.pack(); > button.addSelectionListener(new SelectionAdapter() { > @Override > public void widgetSelected(SelectionEvent e) { > TableItem[] items = table.getItems(); > TableItem[] selected = table.getSelection(); > boolean isSelected = false; > for (TableItem ti : selected) { > if (ti == thisItem) { > isSelected = true; > break; > } > } > int index = -1; > for (int i = 0; i < items.length; i++) { > if (items[i] == thisItem) { > index = i; > break; > } > } > if (index >= 0) { > if (isSelected) { > table.deselect(index); > } > table.remove(index); > } > // Generate an event so that table editors move. >// table.setRedraw(false); >// try { >// Rectangle bounds = table.getBounds(); >// table.setSize(bounds.width, bounds.height - 1); >// table.setSize(bounds.width, bounds.height); >// } finally { >// table.setRedraw(true); >// } > } > }); > editor.minimumWidth = button.getSize().x; > editor.horizontalAlignment = SWT.CENTER; > editor.setEditor(button, thisItem, 3); > hook(editor, thisItem); > } > shell.pack(); > shell.open(); > while (!shell.isDisposed()) { > if (!display.readAndDispatch()) { > display.sleep(); > } > } > display.dispose(); > } >}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 551999
: 280224