annotate dwt/events/SelectionEvent.d @ 9:ad2b69216039

moved org.eclipse.swt to dwt
author Frank Benoit <benoit@tionex.de>
date Sat, 05 Jan 2008 17:39:49 +0100
parents org/eclipse/swt/events/SelectionEvent.d@088b30eabff3
children 63c023465156
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
1 /*******************************************************************************
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
2 * Copyright (c) 2000, 2007 IBM Corporation and others.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
3 * All rights reserved. This program and the accompanying materials
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
4 * are made available under the terms of the Eclipse Public License v1.0
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
5 * which accompanies this distribution, and is available at
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
6 * http://www.eclipse.org/legal/epl-v10.html
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
7 *
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
8 * Contributors:
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
9 * IBM Corporation - initial API and implementation
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
10 *******************************************************************************/
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
11 module org.eclipse.swt.events.SelectionEvent;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
12
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
13
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
14 import org.eclipse.swt.widgets.Event;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
15 import org.eclipse.swt.events.TypedEvent;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
16
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
17 import tango.text.convert.Format;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
18 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
19 * Instances of this class are sent as a result of
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
20 * widgets being selected.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
21 * <p>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
22 * Note: The fields that are filled in depend on the widget.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
23 * </p>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
24 *
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
25 * @see SelectionListener
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
26 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
27
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
28 public class SelectionEvent : TypedEvent {
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
29
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
30 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
31 * The item that was selected.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
32 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
33 public Widget item;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
34
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
35 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
36 * Extra detail information about the selection, depending on the widget.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
37 *
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
38 * <p><b>Sash</b><ul>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
39 * <li>{@link org.eclipse.swt.SWT#DRAG}</li>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
40 * </ul></p><p><b>ScrollBar and Slider</b><ul>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
41 * <li>{@link org.eclipse.swt.SWT#DRAG}</li>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
42 * <li>{@link org.eclipse.swt.SWT#HOME}</li>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
43 * <li>{@link org.eclipse.swt.SWT#END}</li>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
44 * <li>{@link org.eclipse.swt.SWT#ARROW_DOWN}</li>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
45 * <li>{@link org.eclipse.swt.SWT#ARROW_UP}</li>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
46 * <li>{@link org.eclipse.swt.SWT#PAGE_DOWN}</li>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
47 * <li>{@link org.eclipse.swt.SWT#PAGE_UP}</li>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
48 * </ul></p><p><b>Table and Tree</b><ul>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
49 * <li>{@link org.eclipse.swt.SWT#CHECK}</li>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
50 * </ul></p><p><b>Text</b><ul>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
51 * <li>{@link org.eclipse.swt.SWT#CANCEL}</li>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
52 * </ul></p><p><b>CoolItem and ToolItem</b><ul>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
53 * <li>{@link org.eclipse.swt.SWT#ARROW}</li>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
54 * </ul></p>
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
55 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
56 public int detail;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
57
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
58 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
59 * The x location of the selected area.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
60 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
61 public int x;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
62
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
63 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
64 * The y location of selected area.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
65 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
66 public int y;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
67
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
68 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
69 * The width of selected area.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
70 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
71 public int width;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
72
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
73 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
74 * The height of selected area.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
75 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
76 public int height;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
77
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
78 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
79 * The state of the keyboard modifier keys at the time
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
80 * the event was generated.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
81 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
82 public int stateMask;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
83
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
84 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
85 * The text of the hyperlink that was selected.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
86 * This will be either the text of the hyperlink or the value of its HREF,
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
87 * if one was specified.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
88 *
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
89 * @see org.eclipse.swt.widgets.Link#setText(String)
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
90 * @since 3.1
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
91 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
92 public char[] text;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
93
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
94 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
95 * A flag indicating whether the operation should be allowed.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
96 * Setting this field to <code>false</code> will cancel the
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
97 * operation, depending on the widget.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
98 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
99 public bool doit;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
100
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
101 //static final long serialVersionUID = 3976735856884987953L;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
102
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
103 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
104 * Constructs a new instance of this class based on the
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
105 * information in the given untyped event.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
106 *
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
107 * @param e the untyped event containing the information
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
108 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
109 public this(Event e) {
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
110 super(e);
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
111 this.item = e.item;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
112 this.x = e.x;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
113 this.y = e.y;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
114 this.width = e.width;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
115 this.height = e.height;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
116 this.detail = e.detail;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
117 this.stateMask = e.stateMask;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
118 this.text = e.text;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
119 this.doit = e.doit;
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
120 }
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
121
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
122 /**
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
123 * Returns a string containing a concise, human-readable
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
124 * description of the receiver.
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
125 *
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
126 * @return a string representation of the event
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
127 */
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
128 public char[] toString() {
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
129 return Format( "{} item={} detail={} x={} y={} width={} height={} stateMask={} text={} doit={}}",
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
130 super.toString[ 0 .. $-2 ],
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
131 item,
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
132 detail,
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
133 x,
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
134 y,
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
135 width,
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
136 height,
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
137 stateMask,
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
138 text,
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
139 doit );
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
140 }
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
141 }
088b30eabff3 some events
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
142