Skip to content

Instantly share code, notes, and snippets.

@fab1an
Created October 5, 2009 17:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save fab1an/202258 to your computer and use it in GitHub Desktop.
Save fab1an/202258 to your computer and use it in GitHub Desktop.
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.layout.*;
import org.eclipse.swt.events.*;
import org.eclipse.swt.dnd.*;
import org.eclipse.swt.*;
public class TableListenerTest
{
public static void main(String[] args) {
new TableListenerTest();
}
public TableListenerTest () {
Shell shell = new Shell();
shell.setLayout(new FillLayout());
Table table1 = new Table(shell, SWT.BORDER);
table1.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent event) {
System.out.println("event: selection");
}
});
DragSource source = new DragSource(table1, DND.DROP_MOVE);
source.setTransfer(new Transfer[]{TextTransfer.getInstance()});
source.addDragListener(
new DragSourceListener() {
public void dragStart(final DragSourceEvent event) {
System.out.println("event: drag start");
}
public void dragSetData(final DragSourceEvent event) {
System.out.println("event: drag setData");
event.data = "test";
}
public void dragFinished(final DragSourceEvent event) {
System.out.println("event: drag finished");
}
});
TableItem item = new TableItem(table1, SWT.NONE);
item.setText("drag me");
Table table2 = new Table(shell, SWT.BORDER);
DropTarget target = new DropTarget(table2, DND.DROP_MOVE);
target.setTransfer(new Transfer[]{TextTransfer.getInstance()});
target.addDropListener(
new DropTargetAdapter() {
public void drop(final DropTargetEvent event) {
System.out.println("event: drop");
}
public void dragEnter(final DropTargetEvent event) {
System.out.println("event: drag enter");
}
public void dragLeave(final DropTargetEvent event) {
System.out.println("event: drag leave");
}
});
shell.open();
while (! shell.isDisposed())
if (! shell.getDisplay().readAndDispatch())
shell.getDisplay().sleep();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment