package com.vuze.tests.swt;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.*;
public class testTableFG
{
public static void main(String[] args) {
Display display = new Display();
Shell shellMain = new Shell(display, SWT.SHELL_TRIM);
shellMain.setLayout(new FillLayout(SWT.VERTICAL));
Table table = new Table(shellMain, SWT.BORDER);
new TableColumn(table, SWT.RIGHT);
new TableItem(table, SWT.NONE).setText("setText");
table.getColumn(0).setWidth(300);
table.addListener(SWT.PaintItem, new Listener() {
public void handleEvent(Event event) {
Rectangle bounds = ((TableItem) event.item).getBounds(event.index);
event.gc.fillRectangle(bounds.x + 5, bounds.y, 10, bounds.height);
event.gc.drawText("drawnText/No EraseItem", bounds.x + 20, bounds.y, true);
}
});
/////////////////////
Table table2 = new Table(shellMain, SWT.BORDER);
new TableColumn(table2, SWT.RIGHT);
new TableItem(table2, SWT.NONE).setText("setText");
table2.getColumn(0).setWidth(300);
table2.addListener(SWT.PaintItem, new Listener() {
public void handleEvent(Event event) {
Rectangle bounds = ((TableItem) event.item).getBounds(event.index);
event.gc.fillRectangle(bounds.x + 5, bounds.y, 10, bounds.height);
event.gc.drawText("drawnText/EraseItem", bounds.x + 20, bounds.y, true);
}
});
table2.addListener(SWT.EraseItem, new Listener() {
public void handleEvent(Event event) {
}
});
////////////////
shellMain.open();
while (!shellMain.isDisposed()) {
try {
if (!display.readAndDispatch())
display.sleep();
} catch (Throwable t) {
t.printStackTrace();
}
}
display.dispose();
}
}