forked from fanruan/masonry
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
2.4 KiB
75 lines
2.4 KiB
5 years ago
|
!(function () {
|
||
|
|
||
|
var Body = BI.inherit(BI.Widget, {
|
||
|
|
||
|
props: {
|
||
|
baseCls: "dec-frame-body"
|
||
|
},
|
||
|
|
||
|
_store: function () {
|
||
|
return BI.Models.getModel("dec.model.masonry.block", this.options);
|
||
|
},
|
||
|
|
||
|
watch: {
|
||
|
masonry_selectedEntry: function (id) {
|
||
|
this.list.setValue(id);
|
||
|
}
|
||
|
},
|
||
|
|
||
|
render: function () {
|
||
|
var self = this, o = this.options;
|
||
|
|
||
|
return {
|
||
|
type: "bi.vertical",
|
||
|
items: [
|
||
|
{
|
||
|
el: BI.extend({
|
||
|
type: "dec.common.img.icon_text_item",
|
||
|
height: 36,
|
||
|
logic: {
|
||
|
dynamic: true
|
||
|
},
|
||
|
text: o.text,
|
||
|
imgSrc: o.imgSrc,
|
||
|
iconCls: o.iconCls
|
||
|
})
|
||
|
}, {
|
||
|
el: {
|
||
|
type: "bi.button_group",
|
||
|
ref: function (_ref) {
|
||
|
self.list = _ref;
|
||
|
},
|
||
|
layouts: [
|
||
|
{
|
||
|
type: "bi.vertical"
|
||
|
}
|
||
|
],
|
||
|
items: BI.map(o.items, function (index, item) {
|
||
|
return BI.extend({
|
||
|
type: "dec.common.img.icon_text_item",
|
||
|
height: 30,
|
||
|
cls: "dec-frame-platform-list-item-active dec-font-size-14"
|
||
|
}, item);
|
||
|
}),
|
||
|
listeners: [
|
||
|
{
|
||
|
eventName: "EVENT_CHANGE",
|
||
|
action: function (v) {
|
||
|
self.store.handleItemSelect(v);
|
||
|
}
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
lgap: 15
|
||
|
}
|
||
|
]
|
||
|
};
|
||
|
},
|
||
|
|
||
|
setValue: function (v) {
|
||
|
this.list.setValue(v);
|
||
|
}
|
||
|
});
|
||
|
|
||
|
BI.shortcut("dec.masonry.block", Body);
|
||
|
}());
|