Mercurial > projects > dwt-mac
comparison dwt/dnd/TreeDropTargetEffect.d @ 7:e831403a80a9
Add 'cast' to casts
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Wed, 27 Aug 2008 14:30:35 +0200 |
parents | 1a8b3cb347e0 |
children | d8635bb48c7c |
comparison
equal
deleted
inserted
replaced
6:b903c16b6f48 | 7:e831403a80a9 |
---|---|
88 if (theControl is 0) return null; | 88 if (theControl is 0) return null; |
89 Display display = Display.findDisplay(Thread.currentThread()); | 89 Display display = Display.findDisplay(Thread.currentThread()); |
90 if (display is null || display.isDisposed()) return null; | 90 if (display is null || display.isDisposed()) return null; |
91 Widget widget = display.findWidget(theControl); | 91 Widget widget = display.findWidget(theControl); |
92 if (widget is null) return null; | 92 if (widget is null) return null; |
93 return (DropTarget)widget.getData(DND.DROP_TARGET_KEY); | 93 return cast(DropTarget)widget.getData(DND.DROP_TARGET_KEY); |
94 } | 94 } |
95 | 95 |
96 /** | 96 /** |
97 * Creates a new <code>TreeDropTargetEffect</code> to handle the drag under effect on the specified | 97 * Creates a new <code>TreeDropTargetEffect</code> to handle the drag under effect on the specified |
98 * <code>Tree</code>. | 98 * <code>Tree</code>. |
124 * @see DropTargetAdapter | 124 * @see DropTargetAdapter |
125 * @see DropTargetEvent | 125 * @see DropTargetEvent |
126 */ | 126 */ |
127 public void dragEnter(DropTargetEvent event) { | 127 public void dragEnter(DropTargetEvent event) { |
128 if (callbacks is null) { | 128 if (callbacks is null) { |
129 Tree table = (Tree) control; | 129 Tree table = cast(Tree) control; |
130 DataBrowserCallbacks callbacks = new DataBrowserCallbacks (); | 130 DataBrowserCallbacks callbacks = new DataBrowserCallbacks (); |
131 OS.GetDataBrowserCallbacks (table.handle, callbacks); | 131 OS.GetDataBrowserCallbacks (table.handle, callbacks); |
132 callbacks.v1_acceptDragCallback = AcceptDragProc.getAddress(); | 132 callbacks.v1_acceptDragCallback = AcceptDragProc.getAddress(); |
133 OS.SetDataBrowserCallbacks(table.handle, callbacks); | 133 OS.SetDataBrowserCallbacks(table.handle, callbacks); |
134 } | 134 } |
152 * | 152 * |
153 * @see DropTargetAdapter | 153 * @see DropTargetAdapter |
154 * @see DropTargetEvent | 154 * @see DropTargetEvent |
155 */ | 155 */ |
156 public void dragLeave(DropTargetEvent event) { | 156 public void dragLeave(DropTargetEvent event) { |
157 Tree tree = (Tree) control; | 157 Tree tree = cast(Tree) control; |
158 if (insertItem !is null) { | 158 if (insertItem !is null) { |
159 setInsertMark(tree, null, false); | 159 setInsertMark(tree, null, false); |
160 insertItem = null; | 160 insertItem = null; |
161 } | 161 } |
162 expandBeginTime = 0; | 162 expandBeginTime = 0; |
182 * @see DND#FEEDBACK_INSERT_BEFORE | 182 * @see DND#FEEDBACK_INSERT_BEFORE |
183 * @see DND#FEEDBACK_INSERT_AFTER | 183 * @see DND#FEEDBACK_INSERT_AFTER |
184 * @see DND#FEEDBACK_SCROLL | 184 * @see DND#FEEDBACK_SCROLL |
185 */ | 185 */ |
186 public void dragOver(DropTargetEvent event) { | 186 public void dragOver(DropTargetEvent event) { |
187 Tree tree = (Tree) control; | 187 Tree tree = cast(Tree) control; |
188 TreeItem item = (TreeItem)getItem(tree, event.x, event.y); | 188 TreeItem item = cast(TreeItem)getItem(tree, event.x, event.y); |
189 int effect = checkEffect(event.feedback); | 189 int effect = checkEffect(event.feedback); |
190 if ((effect & DND.FEEDBACK_EXPAND) is 0) { | 190 if ((effect & DND.FEEDBACK_EXPAND) is 0) { |
191 expandBeginTime = 0; | 191 expandBeginTime = 0; |
192 expandItem = null; | 192 expandItem = null; |
193 } else { | 193 } else { |
196 if (item.getItemCount() > 0 && !item.getExpanded()) { | 196 if (item.getItemCount() > 0 && !item.getExpanded()) { |
197 Event e = new Event(); | 197 Event e = new Event(); |
198 e.x = event.x; | 198 e.x = event.x; |
199 e.y = event.y; | 199 e.y = event.y; |
200 e.item = item; | 200 e.item = item; |
201 e.time = (int) System.currentTimeMillis(); | 201 e.time = cast(int) System.currentTimeMillis(); |
202 tree.notifyListeners(DWT.Expand, e); | 202 tree.notifyListeners(DWT.Expand, e); |
203 if (item.isDisposed()) return; | 203 if (item.isDisposed()) return; |
204 item.setExpanded(true); | 204 item.setExpanded(true); |
205 } | 205 } |
206 expandBeginTime = 0; | 206 expandBeginTime = 0; |
251 } | 251 } |
252 } else { | 252 } else { |
253 setInsertMark(tree, null, false); | 253 setInsertMark(tree, null, false); |
254 } | 254 } |
255 // save current effect for selection feedback | 255 // save current effect for selection feedback |
256 ((DropTarget)event.widget).feedback = effect; | 256 (cast(DropTarget)event.widget).feedback = effect; |
257 } | 257 } |
258 | 258 |
259 void setInsertMark(Tree tree, TreeItem item, bool before) { | 259 void setInsertMark(Tree tree, TreeItem item, bool before) { |
260 if (item is insertItem && before is insertBefore) return; | 260 if (item is insertItem && before is insertBefore) return; |
261 insertItem = item; | 261 insertItem = item; |