Mercurial > projects > dwt-mac
comparison dwt/widgets/ScrollBar.d @ 57:4444d15131d5
Updated ScrollBar to 3.514
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Mon, 08 Dec 2008 22:02:10 +0100 |
parents | 34237ae5156a |
children | 62202ce0039f |
comparison
equal
deleted
inserted
replaced
56:a470e49a1890 | 57:4444d15131d5 |
---|---|
23 import dwt.internal.cocoa.NSScroller; | 23 import dwt.internal.cocoa.NSScroller; |
24 import dwt.internal.cocoa.OS; | 24 import dwt.internal.cocoa.OS; |
25 import dwt.internal.cocoa.id; | 25 import dwt.internal.cocoa.id; |
26 | 26 |
27 import dwt.dwthelper.utils; | 27 import dwt.dwthelper.utils; |
28 import dwt.internal.cocoa.CGFloat; | 28 import dwt.internal.c.Carbon; |
29 import dwt.internal.cocoa.NSScroller; | |
29 import dwt.widgets.Event; | 30 import dwt.widgets.Event; |
30 import dwt.widgets.Scrollable; | 31 import dwt.widgets.Scrollable; |
31 import dwt.widgets.TypedListener; | 32 import dwt.widgets.TypedListener; |
32 import dwt.widgets.Widget; | 33 import dwt.widgets.Widget; |
33 | 34 |
287 * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> | 288 * <li>ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver</li> |
288 * </ul> | 289 * </ul> |
289 */ | 290 */ |
290 public Point getSize () { | 291 public Point getSize () { |
291 checkWidget(); | 292 checkWidget(); |
292 NSRect rect = ((NSScroller)view).frame(); | 293 NSRect rect = (cast(NSScroller)view).frame(); |
293 return new Point((int)rect.width, (int)rect.height); | 294 return new Point(cast(int)rect.width, cast(int)rect.height); |
294 } | 295 } |
295 | 296 |
296 /** | 297 /** |
297 * Returns the size of the receiver's thumb relative to the | 298 * Returns the size of the receiver's thumb relative to the |
298 * difference between its maximum and minimum values. | 299 * difference between its maximum and minimum values. |
427 value = getSelection (); | 428 value = getSelection (); |
428 } | 429 } |
429 Event event = new Event(); | 430 Event event = new Event(); |
430 NSScrollerPart hitPart = (cast(NSScroller)view).hitPart(); | 431 NSScrollerPart hitPart = (cast(NSScroller)view).hitPart(); |
431 switch (hitPart) { | 432 switch (hitPart) { |
432 case NSScrollerDecrementLine: | 433 case OS.NSScrollerDecrementLine: |
433 value -= increment; | 434 value -= increment; |
434 event.detail = DWT.ARROW_UP; | 435 event.detail = DWT.ARROW_UP; |
435 break; | 436 break; |
436 case NSScrollerDecrementPage: | 437 case OS.NSScrollerDecrementPage: |
437 value -= pageIncrement; | 438 value -= pageIncrement; |
438 event.detail = DWT.PAGE_UP; | 439 event.detail = DWT.PAGE_UP; |
439 break; | 440 break; |
440 case NSScrollerIncrementLine: | 441 case OS.NSScrollerIncrementLine: |
441 value += increment; | 442 value += increment; |
442 event.detail = DWT.PAGE_DOWN; | 443 event.detail = DWT.PAGE_DOWN; |
443 break; | 444 break; |
444 case NSScrollerIncrementPage: | 445 case OS.NSScrollerIncrementPage: |
445 value += pageIncrement; | 446 value += pageIncrement; |
446 event.detail = DWT.ARROW_DOWN; | 447 event.detail = DWT.ARROW_DOWN; |
447 break; | 448 break; |
448 case NSScrollerKnob: | 449 case OS.NSScrollerKnob: |
449 event.detail = DWT.DRAG; | 450 event.detail = DWT.DRAG; |
450 break; | 451 break; |
452 default: | |
453 assert(false); | |
451 } | 454 } |
452 if (target is null) { | 455 if (target is null) { |
453 if (event.detail !is DWT.DRAG) { | 456 if (event.detail !is DWT.DRAG) { |
454 setSelection(value); | 457 setSelection(value); |
455 } | 458 } |