Demo.Func = BI.inherit(BI.Widget, {
    props: {
        baseCls: "demo-func"
    },
    render: function () {
        var self = this;
        this.all = 0;
        var items = BI.deepClone(Demo.CONSTANTS.ITEMS);
        return {
            type: "bi.loader",
            itemsCreator: function (options, populate) {
                setTimeout(function () {
                    populate(BI.map(items.slice((options.times - 1) * 10, options.times * 10), function (i, v) {
                        return BI.extend(v, {
                            type: "bi.single_select_item",
                            height: 25
                        });
                    }));
                }, 1000);
            },
            hasNext: function (options) {
                return options.times * 10 < items.length;
            }
        };
    }
});
BI.shortcut("demo.loader", Demo.Func);