SelectionInListModelView.st
changeset 2572 e370dbc5fbcb
parent 2527 a07a74ff7e3e
child 2596 771e23c6d9cf
--- a/SelectionInListModelView.st	Thu Oct 16 16:23:37 2003 +0200
+++ b/SelectionInListModelView.st	Fri Oct 17 14:50:58 2003 +0200
@@ -777,6 +777,32 @@
 
 !
 
+dragAutoScroll:aContext
+    "called by the DragAndDropManager to scroll during a drag/drop operation
+     if necassery (decided by the widget itself); If a scroll is done return
+     true otherwise false (used to restore the background)
+    "
+    |visibleY yOrigin inset|
+
+    visibleY := aContext targetPoint y.
+    yOrigin  := self yOriginOfContents.
+    inset    := 15 + margin.
+
+    visibleY <= inset ifTrue:[
+        self yOriginOfContents == 0 ifTrue:[ ^ false ].
+    ] ifFalse:[
+        visibleY < (self height - inset) ifTrue:[ ^ false ].
+        self yOriginOfContents < self maxViewOriginY ifFalse:[ ^ false ].
+    ].
+
+    aContext contentsWillChange.
+
+    visibleY <= inset ifTrue:[ self scrollUp:inset ]
+                     ifFalse:[ self scrollDown:inset ].
+
+    ^ true
+!
+
 dropSource
     "returns the dropSource or nil
     "
@@ -2291,5 +2317,5 @@
 !SelectionInListModelView class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libwidg2/SelectionInListModelView.st,v 1.87 2003-06-20 14:25:06 penk Exp $'
+    ^ '$Header: /cvs/stx/stx/libwidg2/SelectionInListModelView.st,v 1.88 2003-10-17 12:50:58 ca Exp $'
 ! !