Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 9658 → Rev 9659

/programs/develop/cedit/SRC/scroll.ob07
185,8 → 185,9
 
PROCEDURE setValue* (VAR scroll: tScroll; value: INTEGER);
VAR
pos, maxPos, n, m: INTEGER;
pos, maxPos, maxVal, n, m: INTEGER;
BEGIN
maxVal := scroll.maxVal;
IF scroll.vertical THEN
maxPos := scroll.height
ELSE
193,23 → 194,23
maxPos := scroll.width
END;
maxPos := maxPos - scroll.btnSize*2 - scroll.sliderSize + 1;
IF (value < 0) OR (scroll.maxVal <= 0) THEN
IF (value < 0) OR (maxVal <= 0) THEN
value := 0;
pos := 0
ELSIF value > scroll.maxVal THEN
value := scroll.maxVal;
ELSIF value > maxVal THEN
value := maxVal;
pos := maxPos
ELSE
IF (maxPos + 1) >= scroll.maxVal THEN
n := (maxPos + 1) DIV scroll.maxVal;
m := (maxPos + 1) MOD scroll.maxVal;
IF (maxPos + 1) >= maxVal THEN
n := (maxPos + 1) DIV maxVal;
m := (maxPos + 1) MOD maxVal;
pos := value*n + MIN(value, m)
ELSE
pos := FLOOR(FLT(value)*FLT(maxPos + 1)/FLT(scroll.maxVal))
pos := FLOOR(FLT(value)*FLT(maxPos + 1)/FLT(maxVal))
END;
IF pos > maxPos THEN
pos := maxPos;
value := scroll.maxVal
value := maxVal
END
END;
scroll.pos := pos;
224,9 → 225,10
 
PROCEDURE setPos (VAR scroll: tScroll; pos: INTEGER);
VAR
maxPos, value, n, m, x, x0, q: INTEGER;
maxPos, value, maxVal, n, m, x, x0, q: INTEGER;
BEGIN
IF scroll.maxVal > 0 THEN
maxVal := scroll.maxVal;
IF maxVal > 0 THEN
IF scroll.vertical THEN
maxPos := scroll.height
ELSE
238,11 → 240,11
value := 0
ELSIF pos >= maxPos THEN
pos := maxPos;
value := scroll.maxVal
value := maxVal
ELSE
IF scroll.maxVal <= maxPos + 1 THEN
n := (maxPos + 1) DIV scroll.maxVal;
m := (maxPos + 1) MOD scroll.maxVal;
IF maxVal <= maxPos + 1 THEN
n := (maxPos + 1) DIV maxVal;
m := (maxPos + 1) MOD maxVal;
 
q := m*(n + 1);
IF q < pos THEN
263,16 → 265,16
pos := x;
IF pos > maxPos THEN
pos := maxPos;
value := scroll.maxVal
value := maxVal
END
END
ELSE
value := FLOOR(FLT(scroll.maxVal)*FLT(pos)/FLT(maxPos + 1))
value := FLOOR(FLT(maxVal)*FLT(pos)/FLT(maxPos + 1))
END
END
ELSE
pos := 0;
scroll.value := 0
value := 0
END;
scroll.pos := pos;
scroll.value := value