guy 3 years ago
parent
commit
9e6b75ed4a
  1. 14
      src/core/platform/web/config.js
  2. 72
      src/core/wrapper/layout/float/float.horizontal.js

14
src/core/platform/web/config.js

@ -113,19 +113,7 @@ BI.prepares.push(function () {
if (ob.items && ob.items.length <= 1) {
return BI.extend({}, ob, {type: "bi.inline_horizontal_adapt"});
}
return BI.extend({}, ob, {
type: "bi.inline_horizontal_adapt",
vgap: 0,
tgap: 0,
bgap: 0,
items: [{
type: "bi.vertical",
vgap: ob.vgap,
tgap: ob.tgap,
bgap: ob.bgap,
items: ob.items
}]
});
return ob;
});
BI.Plugin.configWidget("bi.horizontal_fill", function (ob) {

72
src/core/wrapper/layout/float/float.horizontal.js

@ -1,6 +1,74 @@
/**
* 浮动的水平居中布局
*/
BI.FloatHorizontalLayout = function () {
};
BI.FloatHorizontalLayout = BI.inherit(BI.Layout, {
props: function () {
return BI.extend(BI.InlineHorizontalAdaptLayout.superclass.props.apply(this, arguments), {
baseCls: "bi-h-fl",
horizontalAlign: BI.HorizontalAlign.Center,
verticalAlign: BI.VerticalAlign.Top,
rowSize: [],
hgap: 0,
vgap: 0,
lgap: 0,
rgap: 0,
tgap: 0,
bgap: 0
});
},
render: function () {
var self = this, o = this.options;
if (o.verticalAlign === BI.VerticalAlign.Top){
return {
type: "bi.vertical",
ref: function (_ref) {
self.layout = _ref;
},
items: this._formatItems(o.items),
vgap: o.vgap,
tgap: o.tgap,
bgap: o.bgap
};
}
return {
type: "bi.inline",
items: [{
type: "bi.vertical",
ref: function (_ref) {
self.layout = _ref;
},
items: this._formatItems(o.items),
vgap: o.vgap,
tgap: o.tgap,
bgap: o.bgap
}],
horizontalAlign: o.horizontalAlign,
verticalAlign: o.verticalAlign
};
},
_formatItems: function (items) {
var o = this.options;
return BI.map(items, function (i, item) {
return {
type: "bi.inline_horizontal_adapt",
horizontalAlign: o.horizontalAlign,
items: [item],
hgap: o.hgap,
lgap: o.lgap,
rgap: o.rgap
}
});
},
resize: function () {
this.layout.stroke(this._formatItems(this.options.items));
},
populate: function (items) {
this.layout.populate(this._formatItems(items));
}
});
BI.shortcut("bi.horizontal_float", BI.FloatHorizontalLayout);

Loading…
Cancel
Save