if (PB == 'undefined') {
    PB = {};
}
PB.HorizonalList = function() {
    var obj = {
        scrollIndex: 0,
        selectedIndex: 0,
        columnWidth: 60,
        rowHeight: 54,
        data: null,
        pageSize: 0,
        userHasScrolled: false,
        itemRenderer: null,
        initalize: function() {
            this.list = jQuery('.list');
            this.list.get().scrollLeft = 0;
            this.listContent = this.list.find('.listContent');
        },
        scrollToIndex: function(index) {
                if (index < 0 ) {
                    index = 0;
                }
                if (index > (this.data.length - this.pageSize -1)) {
                    index = this.data.length - this.pageSize -1;
                }
                //alert("scroll: " + index);
                var offset = index * this.thumbWidth;
                //this.listContent.css("left", offset);
                //this.list.
               // this.listContent.css("left", "-" + offset + "px");
                this.list.stop();
                this.list.animate({scrollLeft: offset}, 800);
                this.scrollIndex = index;
                this.buildThumbnails(this.scrollIndex + (this.pageSize * 2) + 1);
        },
        buildThumbnails: function(finishCount) {
            var currentThumbnails = this.thumbnails.length
            if (finishCount < currentThumbnails) {
                return;
            }
            var listContent = this.listContent;
            for (var i = currentThumbnails; ((i < finishCount) &&(i < this.data.length)); i++) {
                this.thumbnails.push(new PB.Slideshow.Thumbnail(this.data[i], i, listContent));
            }
        },
        setWidth: function(value) {

        },
        setRowHeight: function(value) {

        },
        setData: function(value) {
            this.data = value;
        }
    }
    return obj;
};




