diff options
author | Carolyn MacLeod | 2003-11-05 17:25:39 +0000 |
---|---|---|
committer | Carolyn MacLeod | 2003-11-05 17:25:39 +0000 |
commit | e2670f77f23e0d7a40ec30e904322e9b0d0d745d (patch) | |
tree | 2bfe7865f180a0e52b7bb22be392e8f20ef3d757 /examples | |
parent | 743604d746feeffb2c2258124eff6a6a1f3cd973 (diff) | |
download | eclipse.platform.swt-e2670f77f23e0d7a40ec30e904322e9b0d0d745d.tar.gz eclipse.platform.swt-e2670f77f23e0d7a40ec30e904322e9b0d0d745d.tar.xz eclipse.platform.swt-e2670f77f23e0d7a40ec30e904322e9b0d0d745d.zip |
Added selectable event logging.
Diffstat (limited to 'examples')
6 files changed, 300 insertions, 176 deletions
diff --git a/examples/org.eclipse.swt.examples/src/examples_control.properties b/examples/org.eclipse.swt.examples/src/examples_control.properties index 548a200e5a..575cd97464 100644 --- a/examples/org.eclipse.swt.examples/src/examples_control.properties +++ b/examples/org.eclipse.swt.examples/src/examples_control.properties @@ -31,6 +31,13 @@ Enabled = Enabled Visible = Visible Preferred = Preferred Styles = Styles +Listeners = Listeners +Select_Listeners = Select Listeners +Listen = Listen +Clear = Clear +Select_All = Select All +Deselect_All = Deselect All +OK = OK Text_Labels = Text Labels Image_Labels = Image Labels Custom_Labels = Custom Labels @@ -155,12 +162,10 @@ CTabItem1_2 = CTab 2 CItem_Colors = CTabItem Colors CTabItem_content = CTabItem Content TableTree_column = Column -Menu_Controls = Control -MenuItem_Log = &Log Events -MenuItem_Exit = E&xit -MenuItem_Copy = &Copy -MenuItem_SelectAll = Select &All -MenuItem_Clear = C&lear +MenuItem_Cut = Cu&t Ctrl+X +MenuItem_Copy = &Copy Ctrl+C +MenuItem_Paste = &Paste Ctrl+V +MenuItem_SelectAll = Select &All Ctrl+A Orientation = Orientation Default = Default (Inherit) diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ControlExample.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ControlExample.java index e5a1bb53ba..404a771edc 100755 --- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ControlExample.java +++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ControlExample.java @@ -12,7 +12,6 @@ package org.eclipse.swt.examples.controlexample; import org.eclipse.swt.*; -import org.eclipse.swt.custom.*; import org.eclipse.swt.graphics.*; import org.eclipse.swt.layout.*; import org.eclipse.swt.widgets.*; @@ -24,12 +23,7 @@ public class ControlExample { private static ResourceBundle resourceBundle = ResourceBundle.getBundle("examples_control"); private ShellTab shellTab; - private SashForm form; private TabFolder tabFolder; - private Text eventConsole; - private boolean logging = false; - private boolean [] eventsFilter = new boolean [35]; - static boolean standAlone = false; Image images[]; static final int ciClosedFolder = 0, ciOpenFolder = 1, ciTarget = 2; @@ -37,20 +31,6 @@ public class ControlExample { "closedFolder.gif", "openFolder.gif", "target.gif" }; - static final String [] EVENT_TYPES = { "", - "KeyDown", "KeyUp", "MouseDown", "MouseUp", "MouseMove", "MouseEnter", - "MouseExit", "MouseDoubleClick", "Paint", "Move", "Resize", "Dispose", - "Selection", "DefaultSelection", "FocusIn", "FocusOut", "Expand", "Collapse", - "Iconify", "Deiconify", "Close", "Show", "Hide", "Modify", - "Verify", "Activate", "Deactivate", "Help", "DragDetect", "Arm", - "Traverse", "MouseHover", "HardKeyDown", "HardKeyUp" - }; - static final int [] DEFAULT_FILTER = { - SWT.KeyDown, SWT.KeyUp, SWT.MouseDown, SWT.MouseUp, SWT.MouseDoubleClick, SWT.Selection, - SWT.DefaultSelection, SWT.Expand, SWT.Collapse, SWT.Iconify, SWT.Deiconify, SWT.Close, - SWT.Show, SWT.Hide, SWT.Modify, SWT.Verify, SWT.Activate, SWT.Deactivate, - SWT.Help, SWT.DragDetect, SWT.Arm, SWT.Traverse, SWT.HardKeyDown, SWT.HardKeyUp - }; /** * Creates an instance of a ControlExample embedded inside @@ -60,8 +40,7 @@ public class ControlExample { */ public ControlExample(Composite parent) { initResources(); - form = new SashForm (parent,SWT.VERTICAL); - tabFolder = new TabFolder (form, SWT.NONE); + tabFolder = new TabFolder (parent, SWT.NONE); Tab [] tabs = createTabs(); for (int i=0; i<tabs.length; i++) { TabItem item = new TabItem (tabFolder, SWT.NONE); @@ -69,93 +48,6 @@ public class ControlExample { item.setControl (tabs [i].createTabFolderPage (tabFolder)); item.setData (tabs [i]); } - if (standAlone) { - createControlExampleMenu (parent.getShell ()); - eventConsole = new Text(form, SWT.MULTI | SWT.V_SCROLL); - form.setWeights(new int[] {100, 0}); - createEventConsolePopup (eventConsole); - for (int i = 0; i < DEFAULT_FILTER.length; i++) { - eventsFilter [DEFAULT_FILTER [i]] = true; - } - } - } - - /** - * Hide the event logger. - */ - void closeEventConsole() { - logging = false; - form.setWeights(new int[] {100, 0}); - eventConsole.setEnabled (false); - TabItem[] tabs = tabFolder.getItems (); - for (int i = 0; i < tabs.length; i++) { - Tab tab = (Tab) tabs[i].getData (); - tab.recreateExampleWidgets (); - } - } - - /** - * Create the menubar - */ - void createControlExampleMenu(final Shell shell) { - Menu bar = new Menu (shell, SWT.BAR); - MenuItem consoleItem = new MenuItem (bar, SWT.CASCADE); - consoleItem.setText (ControlExample.getResourceString("Menu_Controls")); - shell.setMenuBar (bar); - Menu dropDown = new Menu (bar); - consoleItem.setMenu (dropDown); - - final MenuItem showEvents = new MenuItem (dropDown, SWT.CHECK); - showEvents.setText (ControlExample.getResourceString("MenuItem_Log")); - showEvents.addListener (SWT.Selection, new Listener () { - public void handleEvent (Event e) { - if (showEvents.getSelection()) { - openEventConsole (shell); - } else { - closeEventConsole (); - } - } - }); - - final MenuItem exit = new MenuItem (dropDown, SWT.NONE); - exit.setText (ControlExample.getResourceString("MenuItem_Exit")); - exit.addListener (SWT.Selection, new Listener () { - public void handleEvent (Event e) { - shell.dispose(); - } - }); - } - - /** - * Create the menubar - */ - void createEventConsolePopup (final Text console) { - Menu popup = new Menu (console.getShell (), SWT.POP_UP); - console.setMenu (popup); - - MenuItem copy = new MenuItem (popup, SWT.PUSH); - copy.setAccelerator(SWT.MOD1 + 'C'); - copy.setText (ControlExample.getResourceString("MenuItem_Copy") + "\tCtrl+C"); - copy.addListener (SWT.Selection, new Listener () { - public void handleEvent (Event event) { - console.copy (); - } - }); - MenuItem selectAll = new MenuItem (popup, SWT.PUSH); - selectAll.setAccelerator(SWT.MOD1 + 'A'); - selectAll.setText(ControlExample.getResourceString("MenuItem_SelectAll")); - selectAll.addListener (SWT.Selection, new Listener () { - public void handleEvent (Event event) { - console.selectAll (); - } - }); - MenuItem clear = new MenuItem (popup, SWT.PUSH); - clear.setText (ControlExample.getResourceString("MenuItem_Clear")); - clear.addListener (SWT.Selection, new Listener () { - public void handleEvent (Event event) { - console.setText (""); - } - }); } /** @@ -271,39 +163,15 @@ public class ControlExample { } /** - * Answers true if this example is currently logging all - * events, and false otherwise. - */ - public boolean isLogging () { - return logging; - } - /** - * Logs an event to the event console. - */ - void log(Event event) { - if (logging && eventsFilter [event.type]) { - StringBuffer output = new StringBuffer (EVENT_TYPES[event.type]); - output.append (": "); - output.append (event.widget.toString ()); - output.append (" X: "); - output.append (event.x); - output.append (" Y: "); - output.append (event.y); - output.append ("\n"); - eventConsole.append (output.toString ()); - } - } - - /** * Invokes as a standalone program. */ public static void main(String[] args) { - standAlone = true; Display display = new Display(); Shell shell = new Shell(display); shell.setLayout(new FillLayout()); ControlExample instance = new ControlExample(shell); shell.setText(getResourceString("window.title")); + setShellSize(display, shell); shell.open(); while (! shell.isDisposed()) { if (! display.readAndDispatch()) display.sleep(); @@ -312,24 +180,23 @@ public class ControlExample { } /** - * Open the event logger. + * Grabs input focus. */ - void openEventConsole(Shell shell) { - logging = true; - form.setWeights(new int[] {80,20}); - eventConsole.setEnabled (true); - TabItem[] tabs = tabFolder.getItems (); - for (int i = 0; i < tabs.length; i++) { - Tab tab = (Tab) tabs[i].getData (); - tab.recreateExampleWidgets (); - } + public void setFocus() { + tabFolder.setFocus(); } /** - * Grabs input focus. + * Sets the size of the shell to it's "packed" size, + * unless that makes it bigger than the display, + * in which case set it to 9/10 of display size. */ - public void setFocus() { - tabFolder.setFocus(); + static void setShellSize (Display display, Shell shell) { + Rectangle bounds = display.getBounds(); + Point size = shell.computeSize (SWT.DEFAULT, SWT.DEFAULT); + if (size.x > bounds.width) size.x = bounds.width * 9 / 10; + if (size.y > bounds.height) size.y = bounds.height * 9 / 10; + shell.setSize (size); } } diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/CustomControlExample.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/CustomControlExample.java index c5b6431225..ecb047eb97 100644 --- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/CustomControlExample.java +++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/CustomControlExample.java @@ -44,12 +44,12 @@ public class CustomControlExample extends ControlExample { * Invokes as a standalone program. */ public static void main(String[] args) { - standAlone = true; Display display = new Display(); Shell shell = new Shell(display); shell.setLayout(new FillLayout()); CustomControlExample instance = new CustomControlExample(shell); shell.setText(getResourceString("custom.window.title")); + setShellSize(display, shell); shell.open(); while (! shell.isDisposed()) { if (! display.readAndDispatch()) display.sleep(); diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/DialogTab.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/DialogTab.java index 7891f8aff9..d0f4ea962f 100755 --- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/DialogTab.java +++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/DialogTab.java @@ -209,7 +209,7 @@ class DialogTab extends Tab { void createControlGroup () { /* * Create the "Control" group. This is the group on the - * left half of each example tab. It consists of the + * right half of each example tab. It consists of the * style group, the display group and the size group. */ controlGroup = new Group (tabFolderPage, SWT.NONE); @@ -401,6 +401,12 @@ class DialogTab extends Tab { } /** + * The platform dialogs do not have SWT listeners. + */ + void createListenersGroup () { + } + + /** * Handle a dialog type combo selection event. * * @param event the selection event diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ShellTab.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ShellTab.java index ac8d357837..d566d1f364 100755 --- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ShellTab.java +++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/ShellTab.java @@ -101,6 +101,7 @@ class ShellTab extends Tab { /* Set the size, title and open the shell */ currentShell.setSize (300, 100); currentShell.setText (ControlExample.getResourceString("Title") + shellCount); + hookListeners (currentShell); currentShell.open (); shellCount++; } diff --git a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/Tab.java b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/Tab.java index b895ec799f..5383c08612 100755 --- a/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/Tab.java +++ b/examples/org.eclipse.swt.examples/src/org/eclipse/swt/examples/controlexample/Tab.java @@ -42,7 +42,7 @@ abstract class Tab { /* Common groups and composites */ Composite tabFolderPage; - Group exampleGroup, controlGroup, displayGroup, sizeGroup, styleGroup, colorGroup; + Group exampleGroup, controlGroup, listenersGroup, displayGroup, sizeGroup, styleGroup, colorGroup; /* Controlling instance */ final ControlExample instance; @@ -62,6 +62,28 @@ abstract class Tab { Color backgroundColor, foregroundColor; Font font; + /* Event logging variables and controls */ + Text eventConsole; + boolean logging = false; + boolean [] eventsFilter; + + static final String [] EVENT_NAMES = { + "", // event types are sequentially numbered from 1, so add placeholder for 0 + "KeyDown", "KeyUp", + "MouseDown", "MouseUp", "MouseMove", "MouseEnter", "MouseExit", "MouseDoubleClick", + "Paint", "Move", "Resize", "Dispose", + "Selection", "DefaultSelection", + "FocusIn", "FocusOut", + "Expand", "Collapse", + "Iconify", "Deiconify", "Close", + "Show", "Hide", + "Modify", "Verify", + "Activate", "Deactivate", + "Help", "DragDetect", "Arm", "Traverse", "MouseHover", + "HardKeyDown", "HardKeyUp", + "MenuDetect" + }; + /** * Creates the Tab within a given instance of ControlExample. */ @@ -77,14 +99,11 @@ abstract class Tab { /* * Create the "Control" group. This is the group on the - * left half of each example tab. It consists of the + * right half of each example tab. It consists of the * style group, the display group and the size group. */ controlGroup = new Group (tabFolderPage, SWT.NONE); - GridLayout gridLayout= new GridLayout (); - controlGroup.setLayout (gridLayout); - gridLayout.numColumns = 2; - gridLayout.makeColumnsEqualWidth = true; + controlGroup.setLayout (new GridLayout (2, true)); controlGroup.setLayoutData (new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_FILL)); controlGroup.setText (ControlExample.getResourceString("Parameters")); @@ -251,10 +270,48 @@ abstract class Tab { } /** + * Create the event console popup menu. + */ + void createEventConsolePopup () { + Menu popup = new Menu (eventConsole.getShell (), SWT.POP_UP); + eventConsole.setMenu (popup); + + MenuItem cut = new MenuItem (popup, SWT.PUSH); + cut.setText (ControlExample.getResourceString("MenuItem_Cut")); + cut.addListener (SWT.Selection, new Listener () { + public void handleEvent (Event event) { + eventConsole.cut (); + } + }); + MenuItem copy = new MenuItem (popup, SWT.PUSH); + copy.setText (ControlExample.getResourceString("MenuItem_Copy")); + copy.addListener (SWT.Selection, new Listener () { + public void handleEvent (Event event) { + eventConsole.copy (); + } + }); + MenuItem paste = new MenuItem (popup, SWT.PUSH); + paste.setText (ControlExample.getResourceString("MenuItem_Paste")); + paste.addListener (SWT.Selection, new Listener () { + public void handleEvent (Event event) { + eventConsole.paste (); + } + }); + new MenuItem (popup, SWT.SEPARATOR); + MenuItem selectAll = new MenuItem (popup, SWT.PUSH); + selectAll.setText(ControlExample.getResourceString("MenuItem_SelectAll")); + selectAll.addListener (SWT.Selection, new Listener () { + public void handleEvent (Event event) { + eventConsole.selectAll (); + } + }); + } + + /** * Creates the "Example" group. The "Example" group * is typically the left hand column in the tab. */ - void createExampleGroup () { + void createExampleGroup () { exampleGroup = new Group (tabFolderPage, SWT.NONE); GridLayout gridLayout = new GridLayout (); exampleGroup.setLayout (gridLayout); @@ -270,6 +327,136 @@ abstract class Tab { /* Do nothing */ } + /** + * Creates and opens the "Listener selection" dialog. + */ + void createListenerSelectionDialog () { + final Shell dialog = new Shell (tabFolderPage.getShell (), SWT.DIALOG_TRIM); + dialog.setText (ControlExample.getResourceString ("Select_Listeners")); + dialog.setLayout (new GridLayout (2, false)); + final Table table = new Table (dialog, SWT.BORDER | SWT.V_SCROLL | SWT.CHECK); + GridData data = new GridData(GridData.FILL_BOTH); + data.verticalSpan = 2; + table.setLayoutData(data); + for (int i = 1; i < EVENT_NAMES.length; i++) { + TableItem item = new TableItem (table, SWT.NONE); + item.setText (EVENT_NAMES[i]); + item.setChecked (eventsFilter[i]); + } + Button selectAll = new Button (dialog, SWT.PUSH); + selectAll.setText(ControlExample.getResourceString ("Select_All")); + selectAll.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL)); + selectAll.addSelectionListener (new SelectionAdapter() { + public void widgetSelected(SelectionEvent e) { + TableItem [] items = table.getItems(); + for (int i = 1; i < EVENT_NAMES.length; i++) { + items[i - 1].setChecked(true); + } + } + }); + Button deselectAll = new Button (dialog, SWT.PUSH); + deselectAll.setText(ControlExample.getResourceString ("Deselect_All")); + deselectAll.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_BEGINNING)); + deselectAll.addSelectionListener (new SelectionAdapter() { + public void widgetSelected(SelectionEvent e) { + TableItem [] items = table.getItems(); + for (int i = 1; i < EVENT_NAMES.length; i++) { + items[i - 1].setChecked(false); + } + } + }); + Label filler = new Label(dialog, SWT.NONE); + Button ok = new Button (dialog, SWT.PUSH); + ok.setText(ControlExample.getResourceString ("OK")); + dialog.setDefaultButton(ok); + ok.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL)); + ok.addSelectionListener (new SelectionAdapter() { + public void widgetSelected(SelectionEvent e) { + TableItem [] items = table.getItems(); + for (int i = 1; i < EVENT_NAMES.length; i++) { + eventsFilter[i] = items[i - 1].getChecked(); + } + dialog.dispose(); + } + }); + dialog.pack (); + dialog.open (); + while (! dialog.isDisposed()) { + if (! dialog.getDisplay().readAndDispatch()) dialog.getDisplay().sleep(); + } + } + + /** + * Creates the "Listeners" group. The "Listeners" group + * goes below the "Example" and "Control" groups. + */ + void createListenersGroup () { + listenersGroup = new Group (tabFolderPage, SWT.NONE); + listenersGroup.setLayout (new GridLayout (3, false)); + GridData gridData = new GridData (GridData.HORIZONTAL_ALIGN_FILL | GridData.FILL_VERTICAL); + gridData.horizontalSpan = 2; + listenersGroup.setLayoutData (gridData); + listenersGroup.setText (ControlExample.getResourceString ("Listeners")); + + /* + * Create the button to access the 'Listeners' dialog. + */ + Button listenersButton = new Button (listenersGroup, SWT.PUSH); + listenersButton.setText (ControlExample.getResourceString ("Select_Listeners")); + listenersButton.addSelectionListener (new SelectionAdapter() { + public void widgetSelected (SelectionEvent e) { + createListenerSelectionDialog (); + recreateExampleWidgets (); + } + }); + + /* + * Create the checkbox to add/remove listeners to/from the example widgets. + */ + final Button listenCheckbox = new Button (listenersGroup, SWT.CHECK); + listenCheckbox.setText (ControlExample.getResourceString ("Listen")); + listenCheckbox.addSelectionListener (new SelectionAdapter () { + public void widgetSelected(SelectionEvent e) { + logging = listenCheckbox.getSelection (); + recreateExampleWidgets (); + } + }); + + /* + * Create the button to clear the text. + */ + Button clearButton = new Button (listenersGroup, SWT.PUSH); + clearButton.setText (ControlExample.getResourceString ("Clear")); + clearButton.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_END)); + clearButton.addSelectionListener (new SelectionAdapter() { + public void widgetSelected (SelectionEvent e) { + eventConsole.setText (""); + } + }); + + /* Initialize the eventsFilter to log all events. */ + eventsFilter = new boolean [EVENT_NAMES.length]; + for (int i = 1; i < EVENT_NAMES.length; i++) { + eventsFilter [i] = true; + } + + /* Create the event console Text. */ + eventConsole = new Text (listenersGroup, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL); + GridData data = new GridData (GridData.FILL_BOTH); + data.horizontalSpan = 3; + data.heightHint = 80; + eventConsole.setLayoutData (data); + createEventConsolePopup (); + eventConsole.addKeyListener (new KeyAdapter () { + public void keyPressed (KeyEvent e) { + if ((e.keyCode == 'A' || e.keyCode == 'a') && (e.stateMask & SWT.MOD1) != 0) { + eventConsole.selectAll (); + e.doit = false; + } + } + }); + } + void createOrientationGroup () { /* Create Orientation group*/ orientationGroup = new Group (controlGroup, SWT.NONE); @@ -357,15 +544,16 @@ abstract class Tab { * Create a two column page. */ tabFolderPage = new Composite (tabFolder, SWT.NONE); - GridLayout gridLayout = new GridLayout (); - tabFolderPage.setLayout (gridLayout); - gridLayout.numColumns = 2; + tabFolderPage.setLayout (new GridLayout (2, false)); - /* Create the "Example" and "Control" columns */ + /* Create the "Example" and "Control" groups. */ createExampleGroup (); createControlGroup (); - - /* Create the widgets in the two columns */ + + /* Create the "Listeners" group under the "Control" group. */ + createListenersGroup (); + + /* Create and initialize the example and control widgets. */ createExampleWidgets (); hookExampleWidgetListeners (); createControlWidgets (); @@ -427,26 +615,83 @@ abstract class Tab { } /** - * Hook all listeners to all controls. + * Hooks all listeners to all example controls. */ void hookExampleWidgetListeners () { - if (instance.isLogging()) { + if (logging) { Control[] exampleControls = getExampleWidgets(); + for (int i = 0; i < exampleControls.length; i++) { + hookListeners (exampleControls [i]); + } + } + } + + /** + * Hooks all listeners to the specified control. + */ + void hookListeners (Control control) { + if (logging) { Listener listener = new Listener() { public void handleEvent (Event event) { - instance.log (event); + log (event); } }; - for (int i = 0; i < exampleControls.length; i++) { - Control control = exampleControls [i]; - for (int j = SWT.KeyDown; j < SWT.HardKeyUp; j++) { - control.addListener (j, listener); - } + for (int j = 1; j < EVENT_NAMES.length; j++) { + control.addListener (j, listener); } } } /** + * Logs an event to the event console. + */ + void log(Event event) { + if (logging && eventsFilter [event.type]) { + String toString = EVENT_NAMES[event.type] + ": "; + switch (event.type) { + case SWT.KeyDown: + case SWT.KeyUp: toString += new KeyEvent (event).toString (); break; + case SWT.MouseDown: + case SWT.MouseUp: + case SWT.MouseMove: + case SWT.MouseEnter: + case SWT.MouseExit: + case SWT.MouseDoubleClick: + case SWT.MouseHover: toString += new MouseEvent (event).toString (); break; + case SWT.Paint: toString += new PaintEvent (event).toString (); break; + case SWT.Move: + case SWT.Resize: toString += new ControlEvent (event).toString (); break; + case SWT.Dispose: toString += new DisposeEvent (event).toString (); break; + case SWT.Selection: + case SWT.DefaultSelection: toString += new SelectionEvent (event).toString (); break; + case SWT.FocusIn: + case SWT.FocusOut: toString += new FocusEvent (event).toString (); break; + case SWT.Expand: + case SWT.Collapse: toString += new TreeEvent (event).toString (); break; + case SWT.Iconify: + case SWT.Deiconify: + case SWT.Close: + case SWT.Activate: + case SWT.Deactivate: toString += new ShellEvent (event).toString (); break; + case SWT.Show: + case SWT.Hide: toString += new MenuEvent (event).toString (); break; + case SWT.Modify: toString += new ModifyEvent (event).toString (); break; + case SWT.Verify: toString += new VerifyEvent (event).toString (); break; + case SWT.Help: toString += new HelpEvent (event).toString (); break; + case SWT.Arm: toString += new ArmEvent (event).toString (); break; + case SWT.Traverse: toString += new TraverseEvent (event).toString (); break; + case SWT.HardKeyDown: + case SWT.HardKeyUp: + case SWT.DragDetect: + case SWT.MenuDetect: + default: toString += event.toString (); + } + eventConsole.append (toString); + eventConsole.append ("\n"); + } + } + + /** * Recreates the "Example" widgets. */ void recreateExampleWidgets () { |