--- a/HStepSlider.st Mon Jul 03 04:35:33 1995 +0200
+++ b/HStepSlider.st Sun Jul 23 05:13:10 1995 +0200
@@ -13,7 +13,7 @@
'From Smalltalk/X, Version:2.10.3 on 27-sep-1994 at 12:56:30'!
HorizontalScrollBar subclass:#HorizontalSteppingSlider
- instanceVariableNames:''
+ instanceVariableNames:'stepIncrement'
classVariableNames:''
poolDictionaries:''
category:'Views-Interactors'
@@ -23,7 +23,7 @@
COPYRIGHT (c) 1994 by Claus Gittinger
All Rights Reserved
-$Header: /cvs/stx/stx/libwidg2/Attic/HStepSlider.st,v 1.2 1995-05-03 00:42:35 claus Exp $
+$Header: /cvs/stx/stx/libwidg2/Attic/HStepSlider.st,v 1.3 1995-07-23 03:12:43 claus Exp $
'!
!HorizontalSteppingSlider class methodsFor:'documentation'!
@@ -44,7 +44,7 @@
version
"
-$Header: /cvs/stx/stx/libwidg2/Attic/HStepSlider.st,v 1.2 1995-05-03 00:42:35 claus Exp $
+$Header: /cvs/stx/stx/libwidg2/Attic/HStepSlider.st,v 1.3 1995-07-23 03:12:43 claus Exp $
"
!
@@ -80,20 +80,69 @@
initialize
super initialize.
- self scrollDownAction:[|nO|
- nO := (thumb thumbOrigin + 1) min:100.
- thumb thumbOrigin:nO.
- thumb tellOthers "scrollAction value:nO"].
- self scrollUpAction:[|nO|
- nO := (thumb thumbOrigin - 1) max:0.
- thumb thumbOrigin:nO.
- thumb tellOthers "scrollAction value:nO"].
+ stepIncrement := 1.
+ self scrollDownAction:[self scrollStepUp].
+ self scrollUpAction:[self scrollStepDown].
! !
!HorizontalSteppingSlider methodsFor:'accessing'!
model:aModel
thumb model:aModel
+!
+
+stepIncrement:aNumber
+ "set the value used for stepping (defaults to 1)"
+
+ stepIncrement := aNumber
+!
+
+step:aNumber
+ "same as stepIncrement;
+ set the value used for stepping (defaults to 1)"
+
+ stepIncrement := aNumber
+!
+
+step
+ ^ stepIncrement
+!
+
+start:start stop:stop step:step
+ thumb start:start stop:stop.
+ stepIncrement := step
+! !
+
+!HorizontalSteppingSlider methodsFor:'events'!
+
+keyPress:key x:x y:y
+ key == #CursorRight ifTrue:[
+ self scrollStepUp.
+ ^ self
+ ].
+ key == #CursorLeft ifTrue:[
+ self scrollStepDown.
+ ^ self
+ ].
+ super keyPress:key x:x y:y
+! !
+
+!HorizontalSteppingSlider methodsFor:'private'!
+
+scrollStepUp
+ |nO|
+
+ nO := (thumb thumbOrigin + stepIncrement) min:thumb stop.
+ thumb thumbOrigin:nO.
+ thumb tellOthers.
+!
+
+scrollStepDown
+ |nO|
+
+ nO := (thumb thumbOrigin - stepIncrement) max:thumb start.
+ thumb thumbOrigin:nO.
+ thumb tellOthers.
! !
!HorizontalSteppingSlider methodsFor:'misc'!