﻿

    //Scrollbar

    function makeScrollbar(content, scrollbar, handle, horizontal, ignoreMouse) {
        var steps = (horizontal ? (content.getScrollSize().x - content.getSize().x) : (content.getScrollSize().y - content.getSize().y))
        var slider = new Slider(scrollbar, handle, {
            steps: steps,
            mode: (horizontal ? 'horizontal' : 'vertical'),
            onChange: function(step) {
                // Scrolls the content element in x or y direction.
                var x = (horizontal ? step : 0);
                var y = (horizontal ? 0 : step);
                content.scrollTo(x, y);
            }
        }).set(0);
        if (!(ignoreMouse)) {
            // Scroll the content element when the mousewheel is used within the 
            // content or the scrollbar element.
            $$(content, scrollbar).addEvent('mousewheel', function(e) {
                e = new Event(e).stop();
                var step = slider.step - e.wheel * 30;
                slider.set(step);
            });
        }
        // Stops the handle dragging process when the mouse leaves the document body.
        $(document.body).addEvent('mouseleave', function() { slider.drag.stop() });
    }

