--- a/VariablePanelController.st Tue Jun 06 06:16:07 1995 +0200
+++ b/VariablePanelController.st Tue Jun 27 04:24:41 1995 +0200
@@ -37,7 +37,7 @@
version
"
-$Header: /cvs/stx/stx/libwidg/VariablePanelController.st,v 1.2 1995-05-10 02:30:36 claus Exp $
+$Header: /cvs/stx/stx/libwidg/VariablePanelController.st,v 1.3 1995-06-27 02:24:31 claus Exp $
"
! !
@@ -47,7 +47,8 @@
"mouse-button was moved while pressed;
clear prev handleBar and draw handle bar at new position"
- |pos limitMin limitMax subViews barHeight|
+ |pos limitMin limitMax subViews barHeight
+ oldHx oldHy newHx newHy|
movedHandle isNil ifTrue: [^ self]. "should not happen"
@@ -111,12 +112,17 @@
].
isHorizontal ifTrue:[
- view invertHandleBarAtX:prevPos y:0.
- view invertHandleBarAtX:pos y:0.
+ oldHx := prevPos.
+ newHx := pos.
+ oldHy := newHy := 0.
] ifFalse:[
- view invertHandleBarAtX:0 y:prevPos.
- view invertHandleBarAtX:0 y:pos.
+ oldHy := prevPos.
+ newHy := pos.
+ oldHx := newHx := 0.
].
+ view invertHandleBarAtX:oldHx y:oldHy.
+ view invertHandleBarAtX:newHx y:newHy.
+
prevPos := pos
!
@@ -124,7 +130,8 @@
"end bar-move"
|aboveView belowView aboveIndex belowIndex
- newPos oldPos group subViews|
+ newPos oldPos group subViews
+ relCornerAbove fromIndex toIndex|
((button == 1) or:[button == #select]) ifTrue:[
movedHandle isNil ifTrue:[^ self].
@@ -151,25 +158,27 @@
aboveView := subViews at:aboveIndex.
belowView := subViews at:belowIndex.
+ relCornerAbove := aboveView relativeCorner.
isHorizontal ifTrue:[
- oldPos := aboveView relativeCorner x.
+ oldPos := relCornerAbove x.
newPos := (prevPos + startPos / view width) asFloat.
- aboveView relativeCorner:newPos @ aboveView relativeCorner y.
+ aboveView relativeCorner:newPos @ relCornerAbove y.
belowView relativeOrigin:newPos @ belowView relativeOrigin y.
] ifFalse:[
- oldPos := aboveView relativeCorner y.
+ oldPos := relCornerAbove y.
newPos := (prevPos + startPos / view height) asFloat.
- aboveView relativeCorner:aboveView relativeCorner x @ newPos.
+ aboveView relativeCorner:relCornerAbove x @ newPos.
belowView relativeOrigin:belowView relativeOrigin x @ newPos.
].
view lockRedraw.
oldPos > newPos ifTrue:[
- view resizeSubviewsFrom:aboveIndex to:belowIndex.
+ fromIndex := aboveIndex. toIndex := belowIndex.
] ifFalse:[
- view resizeSubviewsFrom:belowIndex to:aboveIndex.
+ fromIndex := belowIndex. toIndex := aboveIndex.
].
+ view resizeSubviewsFrom:fromIndex to:toIndex.
view redrawHandlesFrom:aboveIndex to:belowIndex.
view unlockRedraw.
] ifFalse:[