summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Northover <steve>2005-11-21 23:23:02 +0000
committerSteve Northover <steve>2005-11-21 23:23:02 +0000
commita603af48c5de4d91670d3635c992ecb5d56880fd (patch)
tree21c863e3e23526def1ce7fd771c494ed03478674
parentbc506ed9296ea1a035049f70e6720bc3d31bf492 (diff)
downloadeclipse.platform.swt-a603af48c5de4d91670d3635c992ecb5d56880fd.tar.gz
eclipse.platform.swt-a603af48c5de4d91670d3635c992ecb5d56880fd.tar.xz
eclipse.platform.swt-a603af48c5de4d91670d3635c992ecb5d56880fd.zip
*** empty log message ***
-rw-r--r--bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/JNIGeneratorAppUI.java63
1 files changed, 34 insertions, 29 deletions
diff --git a/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/JNIGeneratorAppUI.java b/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/JNIGeneratorAppUI.java
index b999caa78f..754138776c 100644
--- a/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/JNIGeneratorAppUI.java
+++ b/bundles/org.eclipse.swt.tools/JNI Generation/org/eclipse/swt/tools/internal/JNIGeneratorAppUI.java
@@ -796,35 +796,40 @@ void createParametersPanel(Composite panel) {
paramEditorLt.addListener(SWT.Traverse, paramListListener);
paramsLt.addListener(SWT.MouseDown, new Listener() {
- public void handleEvent(Event e) {
- if (e.button != 1) return;
- Point pt = new Point(e.x, e.y);
- TableItem item = paramsLt.getItem(pt);
- if (item == null) return;
- int column = -1;
- for (int i = 0; i < paramsLt.getColumnCount(); i++) {
- if (item.getBounds(i).contains(pt)) {
- column = i;
- break;
- }
- }
- if (column == -1) return;
- ParameterData data = (ParameterData)item.getData();
- if (column == PARAM_CAST_COLUMN) {
- paramTextEditor.setColumn(column);
- paramTextEditor.setItem(item);
- paramEditorTx.setText(data.getCast());
- paramEditorTx.selectAll();
- paramEditorTx.setVisible(true);
- paramEditorTx.setFocus();
- } else if (column == PARAM_FLAGS_COLUMN) {
- paramListEditor.setColumn(column);
- paramListEditor.setItem(item);
- paramEditorLt.setSelection(data.getFlags());
- floater.setLocation(paramsLt.toDisplay(e.x, e.y));
- floater.setVisible(true);
- paramEditorLt.setFocus();
- }
+ public void handleEvent(final Event e) {
+ e.display.asyncExec (new Runnable () {
+ public void run () {
+ if (paramsLt.isDisposed ()) return;
+ if (e.button != 1) return;
+ Point pt = new Point(e.x, e.y);
+ TableItem item = paramsLt.getItem(pt);
+ if (item == null) return;
+ int column = -1;
+ for (int i = 0; i < paramsLt.getColumnCount(); i++) {
+ if (item.getBounds(i).contains(pt)) {
+ column = i;
+ break;
+ }
+ }
+ if (column == -1) return;
+ ParameterData data = (ParameterData)item.getData();
+ if (column == PARAM_CAST_COLUMN) {
+ paramTextEditor.setColumn(column);
+ paramTextEditor.setItem(item);
+ paramEditorTx.setText(data.getCast());
+ paramEditorTx.selectAll();
+ paramEditorTx.setVisible(true);
+ paramEditorTx.setFocus();
+ } else if (column == PARAM_FLAGS_COLUMN) {
+ paramListEditor.setColumn(column);
+ paramListEditor.setItem(item);
+ paramEditorLt.setSelection(data.getFlags());
+ floater.setLocation(paramsLt.toDisplay(e.x, e.y));
+ floater.setVisible(true);
+ paramEditorLt.setFocus();
+ }
+ }
+ });
}
});
}