1602 vBottomOffs "{ Class: SmallInteger }" |
1602 vBottomOffs "{ Class: SmallInteger }" |
1603 addMargin "{ Class: SmallInteger }"| |
1603 addMargin "{ Class: SmallInteger }"| |
1604 |
1604 |
1605 sBd := 0. |
1605 sBd := 0. |
1606 DefaultScrolledViewBorderWidth notNil ifTrue:[ |
1606 DefaultScrolledViewBorderWidth notNil ifTrue:[ |
1607 sBd := DefaultScrolledViewBorderWidth. |
1607 sBd := DefaultScrolledViewBorderWidth. |
1608 scrolledView notNil ifTrue:[ |
1608 scrolledView notNil ifTrue:[ |
1609 scrolledView borderWidth:DefaultScrolledViewBorderWidth. |
1609 scrolledView borderWidth:DefaultScrolledViewBorderWidth. |
1610 ] |
1610 ] |
1611 ] ifFalse:[ |
1611 ] ifFalse:[ |
1612 scrolledView notNil ifTrue:[ |
1612 scrolledView notNil ifTrue:[ |
1613 sBd := scrolledView borderWidth |
1613 sBd := scrolledView borderWidth |
1614 ] |
1614 ] |
1615 ]. |
1615 ]. |
1616 |
1616 |
1617 (hasV := (vScrollBar notNil and:[vScrollBarHidden not])) ifTrue:[ |
1617 (hasV := (vScrollBar notNil and:[vScrollBarHidden not])) ifTrue:[ |
1618 vBd := vScrollBar borderWidth. |
1618 vBd := vScrollBar borderWidth. |
1619 wVScroll := vScrollBar widthIncludingBorder. |
1619 wVScroll := vScrollBar widthIncludingBorder. |
1620 ] ifFalse:[ |
1620 ] ifFalse:[ |
1621 vBd := wVScroll := 0. |
1621 vBd := wVScroll := 0. |
1622 ]. |
1622 ]. |
1623 |
1623 |
1624 (hasH := (hScrollBar notNil and:[hScrollBarHidden not])) ifTrue:[ |
1624 (hasH := (hScrollBar notNil and:[hScrollBarHidden not])) ifTrue:[ |
1625 hBd := hScrollBar borderWidth. |
1625 hBd := hScrollBar borderWidth. |
1626 hHScroll := hScrollBar heightIncludingBorder. |
1626 hHScroll := hScrollBar heightIncludingBorder. |
1627 ] ifFalse:[ |
1627 ] ifFalse:[ |
1628 hBd := hHScroll := 0. |
1628 hBd := hHScroll := 0. |
1629 ]. |
1629 ]. |
1630 |
1630 |
1631 "/ the raw layout ... |
1631 "/ the raw layout ... |
1632 |
1632 |
1633 scrolledViewLayout := ((0.0 @ 0.0) corner:(1.0@1.0)) asLayout. |
1633 scrolledViewLayout := ((0.0 @ 0.0) corner:(1.0@1.0)) asLayout. |
1643 scrollBarSpacing := DefaultScrollBarSpacing. |
1643 scrollBarSpacing := DefaultScrollBarSpacing. |
1644 |
1644 |
1645 vTopOffs := 0 - vBd + scrolledViewMargin + margin. |
1645 vTopOffs := 0 - vBd + scrolledViewMargin + margin. |
1646 |
1646 |
1647 scrolledViewMargin == 0 ifTrue:[ |
1647 scrolledViewMargin == 0 ifTrue:[ |
1648 vBottomOffs := vBd - scrolledViewMargin - sBd. |
1648 vBottomOffs := vBd - scrolledViewMargin - sBd. |
1649 ] ifFalse:[ |
1649 ] ifFalse:[ |
1650 vBottomOffs := vBd - scrolledViewMargin + sBd. |
1650 vBottomOffs := vBd - scrolledViewMargin + sBd. |
1651 ]. |
1651 ]. |
1652 |
1652 |
1653 hLeftOffs := 0 - hBd + scrolledViewMargin + margin. |
1653 hLeftOffs := 0 - hBd + scrolledViewMargin + margin. |
1654 hRightOffs := hBd - scrolledViewMargin - sBd. |
1654 hRightOffs := hBd - scrolledViewMargin - sBd. |
1655 |
1655 |
1656 sLeftOffs := 0 - hBd + scrolledViewMargin + margin. |
1656 sLeftOffs := 0 - hBd + scrolledViewMargin + margin. |
1657 sRightOffs := hBd - scrolledViewMargin - sBd - sBd - sBd. |
1657 sRightOffs := hBd - scrolledViewMargin - sBd - sBd - sBd. |
1658 |
1658 |
1659 scrolledViewMargin == 0 ifTrue:[ |
1659 scrolledViewMargin == 0 ifTrue:[ |
1660 sTopOffs := 0 - sBd + margin. |
1660 sTopOffs := 0 - sBd + margin. |
1661 sBottomOffs := sBd - sBd. |
1661 sBottomOffs := sBd - sBd. |
1662 ] ifFalse:[ |
1662 ] ifFalse:[ |
1663 sTopOffs := 0 + scrolledViewMargin + margin. |
1663 sTopOffs := 0 + scrolledViewMargin + margin. |
1664 sBottomOffs := sBd - scrolledViewMargin - sBd - sBd - sBd. |
1664 sBottomOffs := sBd - scrolledViewMargin - sBd - sBd - sBd. |
1665 ]. |
1665 ]. |
1666 |
1666 |
1667 "/ kludge - for now |
1667 "/ kludge - for now |
1668 styleSheet name == #win95 ifTrue:[ |
1668 styleSheet name == #win95 ifTrue:[ |
1669 vTopOffs := 0. |
1669 vTopOffs := 0. |
1676 "/ DefaultScrollBarLevel == DefaultScrolledViewLevel |
1676 "/ DefaultScrollBarLevel == DefaultScrolledViewLevel |
1677 "/ addMargin := 1. |
1677 "/ addMargin := 1. |
1678 "/ ]. |
1678 "/ ]. |
1679 |
1679 |
1680 hasV ifTrue:[ |
1680 hasV ifTrue:[ |
1681 scrollBarPosition == #right ifTrue:[ |
1681 scrollBarPosition == #right ifTrue:[ |
1682 "/ right/bottom |
1682 "/ right/bottom |
1683 vScrollBarLayout := ((1.0 @ 0.0) corner:(1.0@1.0)) asLayout. |
1683 vScrollBarLayout := ((1.0 @ 0.0) corner:(1.0@1.0)) asLayout. |
1684 |
1684 |
1685 vRightOffs := 0 - scrolledViewMargin + margin "???". |
1685 vRightOffs := 0 - scrolledViewMargin + margin "???". |
1686 vLeftOffs := vRightOffs - wVScroll. |
1686 vLeftOffs := vRightOffs - wVScroll. |
1687 |
1687 |
1688 sRightOffs := sRightOffs - scrollBarSpacing - wVScroll + sBd. |
1688 sRightOffs := sRightOffs - scrollBarSpacing - wVScroll + sBd. |
1689 |
1689 |
1690 hRightOffs := hRightOffs - wVScroll - scrollBarSpacing - sBd. |
1690 hRightOffs := hRightOffs - wVScroll - scrollBarSpacing - sBd. |
1691 |
1691 |
1692 sRightOffs := sRightOffs - addMargin |
1692 sRightOffs := sRightOffs - addMargin |
1693 ] ifFalse:[ |
1693 ] ifFalse:[ |
1694 "/ left/bottom |
1694 "/ left/bottom |
1695 vScrollBarLayout := ((0.0 @ 0.0) corner:(0.0@1.0)) asLayout. |
1695 vScrollBarLayout := ((0.0 @ 0.0) corner:(0.0@1.0)) asLayout. |
1696 |
1696 |
1697 vLeftOffs := 0 - vBd + scrolledViewMargin + margin. |
1697 vLeftOffs := 0 - vBd + scrolledViewMargin + margin. |
1698 vRightOffs := vLeftOffs + wVScroll + margin. |
1698 vRightOffs := vLeftOffs + wVScroll + margin. |
1699 |
1699 |
1700 sLeftOffs := wVScroll + scrolledViewMargin + scrollBarSpacing + margin. |
1700 sLeftOffs := wVScroll + scrolledViewMargin + scrollBarSpacing + margin. |
1701 sRightOffs := 0 - scrolledViewMargin - margin. |
1701 sRightOffs := 0 - scrolledViewMargin - margin. |
1702 hLeftOffs := hLeftOffs + wVScroll + vBd + scrollBarSpacing. |
1702 hLeftOffs := hLeftOffs + wVScroll + vBd + scrollBarSpacing. |
1703 |
1703 |
1704 sLeftOffs := sLeftOffs + addMargin |
1704 sLeftOffs := sLeftOffs + addMargin |
1705 ]. |
1705 ]. |
1706 ]. |
1706 ]. |
1707 |
1707 |
1708 hasH ifTrue:[ |
1708 hasH ifTrue:[ |
1709 hBottomOffs := 0 - scrolledViewMargin - hBd + margin "???". |
1709 hBottomOffs := 0 - scrolledViewMargin - hBd + margin "???". |
1710 hTopOffs := hBottomOffs - hHScroll. |
1710 hTopOffs := hBottomOffs - hHScroll. |
1711 scrolledViewMargin == 0 ifTrue:[ |
1711 scrolledViewMargin == 0 ifTrue:[ |
1712 hTopOffs := hTopOffs + sBd + sBd |
1712 hTopOffs := hTopOffs + sBd + sBd |
1713 ]. |
1713 ]. |
1714 sBottomOffs := sBottomOffs - scrollBarSpacing - hHScroll. |
1714 sBottomOffs := sBottomOffs - scrollBarSpacing - hHScroll. |
1715 (vScrollBar notNil and:[vScrollBarHidden not]) ifTrue:[ |
1715 (vScrollBar notNil and:[vScrollBarHidden not]) ifTrue:[ |
1716 vBottomOffs := vBottomOffs - scrollBarSpacing - hHScroll. |
1716 vBottomOffs := vBottomOffs - scrollBarSpacing - hHScroll. |
1717 ]. |
1717 ]. |
1718 |
1718 |
1719 sBottomOffs := sBottomOffs - addMargin. |
1719 sBottomOffs := sBottomOffs - addMargin. |
1720 hRightOffs := hRightOffs - addMargin. |
1720 hRightOffs := hRightOffs - addMargin. |
1721 ]. |
1721 ]. |
1722 |
1722 |
1723 (hScrollBar notNil |
1723 (hScrollBar notNil |
1724 and:[ hScrollBar borderWidth == 0 |
1724 and:[ hScrollBar borderWidth == 0 |
1725 and:[sBd ~~ 0 |
1725 and:[sBd ~~ 0 |
1726 and:[scrollBarPosition == #right]]]) ifTrue:[ |
1726 and:[scrollBarPosition == #right]]]) ifTrue:[ |
1727 hRightOffs := hRightOffs + sBd + sBd. |
1727 hRightOffs := hRightOffs + sBd + sBd. |
1728 ]. |
1728 ]. |
1729 |
1729 |
1730 scrolledView notNil ifTrue:[ |
1730 scrolledView notNil ifTrue:[ |
1731 scrolledViewLayout leftOffset:sLeftOffs. |
1731 scrolledViewLayout leftOffset:sLeftOffs. |
1732 scrolledViewLayout rightOffset:sRightOffs. |
1732 scrolledViewLayout rightOffset:sRightOffs. |
1733 scrolledViewLayout topOffset:sTopOffs. |
1733 scrolledViewLayout topOffset:sTopOffs. |
1734 scrolledViewLayout bottomOffset:sBottomOffs. |
1734 scrolledViewLayout bottomOffset:sBottomOffs. |
1735 |
1735 |
1736 configureScrolledView ifTrue:[ |
1736 configureScrolledView ifTrue:[ |
1737 ((hideVScrollBar or:[hideHScrollBar]) not |
1737 ((hideVScrollBar or:[hideHScrollBar]) not |
1738 and:[(hScrollBar isNil or:[hScrollBarHidden]) |
1738 and:[(hScrollBar isNil or:[hScrollBarHidden]) |
1739 and:[(vScrollBar isNil or:[vScrollBarHidden])]]) ifTrue:[ |
1739 and:[(vScrollBar isNil or:[vScrollBarHidden])]]) ifTrue:[ |
1740 scrolledView level:0 |
1740 scrolledView level:0 |
1741 ] ifFalse:[ |
1741 ] ifFalse:[ |
1742 scrolledView level:DefaultScrolledViewLevel. |
1742 scrolledView level:DefaultScrolledViewLevel. |
1743 ]. |
1743 ]. |
1744 ]. |
1744 ]. |
1745 scrolledView layout:scrolledViewLayout. |
1745 scrolledView layout:scrolledViewLayout. |
1746 ]. |
1746 ]. |
1747 hasH ifTrue:[ |
1747 hasH ifTrue:[ |
1748 hScrollBarLayout leftOffset:hLeftOffs. |
1748 hScrollBarLayout leftOffset:hLeftOffs. |
1749 hScrollBarLayout rightOffset:hRightOffs. |
1749 hScrollBarLayout rightOffset:hRightOffs. |
1750 hScrollBarLayout topOffset:hTopOffs. |
1750 hScrollBarLayout topOffset:hTopOffs. |
1751 hScrollBarLayout bottomOffset:hBottomOffs. |
1751 hScrollBarLayout bottomOffset:hBottomOffs. |
1752 |
1752 |
1753 hScrollBar level:DefaultScrollBarLevel. |
1753 hScrollBar level:DefaultScrollBarLevel. |
1754 hScrollBar layout:hScrollBarLayout |
1754 hScrollBar layout:hScrollBarLayout. |
|
1755 |
|
1756 "/ scrollBarPosition == #right ifTrue:[ |
|
1757 "/ "/ right/bottom |
|
1758 "/ hScrollBar viewGravity:#SouthWest. |
|
1759 "/ ] ifFalse:[ |
|
1760 "/ hScrollBar viewGravity:#NorthWest. |
|
1761 "/ ] |
1755 ]. |
1762 ]. |
1756 (vScrollBar notNil and:[vScrollBarHidden not]) ifTrue:[ |
1763 (vScrollBar notNil and:[vScrollBarHidden not]) ifTrue:[ |
1757 vScrollBarLayout leftOffset:vLeftOffs. |
1764 vScrollBarLayout leftOffset:vLeftOffs. |
1758 vScrollBarLayout rightOffset:vRightOffs. |
1765 vScrollBarLayout rightOffset:vRightOffs. |
1759 vScrollBarLayout topOffset:vTopOffs. |
1766 vScrollBarLayout topOffset:vTopOffs. |
1760 vScrollBarLayout bottomOffset:vBottomOffs. |
1767 vScrollBarLayout bottomOffset:vBottomOffs. |
1761 |
1768 |
1762 vScrollBar level:DefaultScrollBarLevel. |
1769 vScrollBar level:DefaultScrollBarLevel. |
1763 vScrollBar layout:vScrollBarLayout |
1770 vScrollBar layout:vScrollBarLayout. |
|
1771 |
|
1772 "/ scrollBarPosition == #right ifTrue:[ |
|
1773 "/ "/ right/bottom |
|
1774 "/ vScrollBar viewGravity:#NorthEast. |
|
1775 "/ ] ifFalse:[ |
|
1776 "/ vScrollBar viewGravity:#NorthWest. |
|
1777 "/ ] |
1764 ]. |
1778 ]. |
1765 |
1779 |
1766 "Created: / 21.5.1998 / 00:48:35 / cg" |
1780 "Created: / 21.5.1998 / 00:48:35 / cg" |
1767 "Modified: / 9.9.1998 / 18:57:35 / cg" |
1781 "Modified: / 9.9.1998 / 18:57:35 / cg" |
1768 ! |
1782 ! |