|
|
|
@ -30415,6 +30415,7 @@ BI.CenterAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
return BI.extend(BI.CenterAdaptLayout.superclass.props.apply(this, arguments), { |
|
|
|
|
baseCls: "bi-center-adapt-layout", |
|
|
|
|
columnSize: [], |
|
|
|
|
scrollx: false, |
|
|
|
|
hgap: 0, |
|
|
|
|
vgap: 0, |
|
|
|
|
lgap: 0, |
|
|
|
@ -30424,92 +30425,33 @@ BI.CenterAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
render: function () { |
|
|
|
|
var o = this.options, self = this; |
|
|
|
|
BI.CenterAdaptLayout.superclass.render.apply(this, arguments); |
|
|
|
|
this.$table = BI.Widget._renderEngine.createElement("<table>").attr({cellspacing: 0, cellpadding: 0}).css({ |
|
|
|
|
position: "relative", |
|
|
|
|
width: "100%", |
|
|
|
|
height: "100%", |
|
|
|
|
"white-space": "nowrap", |
|
|
|
|
"border-spacing": "0px", |
|
|
|
|
border: "none", |
|
|
|
|
"border-collapse": "separate" |
|
|
|
|
}); |
|
|
|
|
this.$tr = BI.Widget._renderEngine.createElement("<tr>"); |
|
|
|
|
this.$tr.appendTo(this.$table); |
|
|
|
|
this.populate(this.options.items); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_addElement: function (i, item) { |
|
|
|
|
var o = this.options; |
|
|
|
|
var td; |
|
|
|
|
var width = o.columnSize[i] <= 1 ? (o.columnSize[i] * 100 + "%") : o.columnSize[i]; |
|
|
|
|
if (!this.hasWidget(this._getChildName(i))) { |
|
|
|
|
var w = BI.createWidget(item); |
|
|
|
|
w.element.css({position: "relative", top: "0", left: "0", margin: "0px auto"}); |
|
|
|
|
td = BI.createWidget({ |
|
|
|
|
type: "bi.default", |
|
|
|
|
tagName: "td", |
|
|
|
|
attributes: { |
|
|
|
|
width: width |
|
|
|
|
}, |
|
|
|
|
items: [w] |
|
|
|
|
}); |
|
|
|
|
this.addWidget(this._getChildName(i), td); |
|
|
|
|
} else { |
|
|
|
|
td = this.getWidgetByName(this._getChildName(i)); |
|
|
|
|
td.element.attr("width", width); |
|
|
|
|
} |
|
|
|
|
td.element.css({"max-width": o.columnSize[i]}); |
|
|
|
|
if (i === 0) { |
|
|
|
|
td.element.addClass("first-element"); |
|
|
|
|
} |
|
|
|
|
td.element.css({ |
|
|
|
|
position: "relative", |
|
|
|
|
height: "100%", |
|
|
|
|
"vertical-align": "middle", |
|
|
|
|
margin: "0", |
|
|
|
|
padding: "0", |
|
|
|
|
border: "none" |
|
|
|
|
}); |
|
|
|
|
if (o.vgap + o.tgap + (item.tgap || 0) + (item.vgap || 0) !== 0) { |
|
|
|
|
w.element.css({ |
|
|
|
|
"margin-top": o.vgap + o.tgap + (item.tgap || 0) + (item.vgap || 0) + "px" |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if (o.hgap + o.lgap + (item.lgap || 0) + (item.hgap || 0) !== 0) { |
|
|
|
|
w.element.css({ |
|
|
|
|
"margin-left": (i === 0 ? o.hgap : 0) + o.lgap + (item.lgap || 0) + (item.hgap || 0) +"px" |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if (o.hgap + o.rgap + (item.rgap || 0) + (item.hgap || 0) !== 0) { |
|
|
|
|
w.element.css({ |
|
|
|
|
"margin-right": o.hgap + o.rgap + (item.rgap || 0) + (item.hgap || 0) + "px" |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if (o.vgap + o.bgap + (item.bgap || 0) + (item.vgap || 0) !== 0) { |
|
|
|
|
w.element.css({ |
|
|
|
|
"margin-bottom": o.vgap + o.bgap + (item.bgap || 0) + (item.vgap || 0) + "px" |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
return td; |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
appendFragment: function (frag) { |
|
|
|
|
this.$tr.append(frag); |
|
|
|
|
this.element.append(this.$table); |
|
|
|
|
return { |
|
|
|
|
type: "bi.horizontal", |
|
|
|
|
verticalAlign: BI.VerticalAlign.Middle, |
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Center, |
|
|
|
|
columnSize: o.columnSize, |
|
|
|
|
scrollx: o.scrollx, |
|
|
|
|
items: o.items, |
|
|
|
|
ref: function (_ref) { |
|
|
|
|
self.layout = _ref; |
|
|
|
|
}, |
|
|
|
|
hgap: o.hgap, |
|
|
|
|
vgap: o.vgap, |
|
|
|
|
lgap: o.lgap, |
|
|
|
|
rgap: o.rgap, |
|
|
|
|
tgap: o.tgap, |
|
|
|
|
bgap: o.bgap |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
resize: function () { |
|
|
|
|
// console.log("center_adapt布局不需要resize");
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_getWrapper: function () { |
|
|
|
|
return this.$tr; |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
populate: function (items) { |
|
|
|
|
BI.CenterAdaptLayout.superclass.populate.apply(this, arguments); |
|
|
|
|
this._mount(); |
|
|
|
|
this.layout.populate.apply(this, arguments); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
BI.shortcut("bi.center_adapt", BI.CenterAdaptLayout);/** |
|
|
|
@ -30641,8 +30583,40 @@ BI.LeftRightVerticalAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
render: function () { |
|
|
|
|
var o = this.options, self = this; |
|
|
|
|
BI.LeftRightVerticalAdaptLayout.superclass.render.apply(this, arguments); |
|
|
|
|
this.populate(this.options.items); |
|
|
|
|
var layoutArray = []; |
|
|
|
|
if ("left" in o.items) { |
|
|
|
|
layoutArray.push({ |
|
|
|
|
type: "bi.left", |
|
|
|
|
items: [{ |
|
|
|
|
el: { |
|
|
|
|
type: "bi.vertical_adapt", |
|
|
|
|
height: "100%", |
|
|
|
|
items: o.items.left, |
|
|
|
|
hgap: o.lhgap, |
|
|
|
|
lgap: o.llgap, |
|
|
|
|
rgap: o.lrgap |
|
|
|
|
} |
|
|
|
|
}] |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if ("right" in o.items) { |
|
|
|
|
layoutArray.push({ |
|
|
|
|
type: "bi.right", |
|
|
|
|
items: [{ |
|
|
|
|
el: { |
|
|
|
|
type: "bi.vertical_adapt", |
|
|
|
|
height: "100%", |
|
|
|
|
items: o.items.right, |
|
|
|
|
hgap: o.rhgap, |
|
|
|
|
lgap: o.rlgap, |
|
|
|
|
rgap: o.rrgap |
|
|
|
|
} |
|
|
|
|
}] |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
return layoutArray; |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
resize: function () { |
|
|
|
@ -30654,40 +30628,6 @@ BI.LeftRightVerticalAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
throw new Error("cannot be added"); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
stroke: function (items) { |
|
|
|
|
var o = this.options; |
|
|
|
|
if ("left" in items) { |
|
|
|
|
var left = BI.createWidget({ |
|
|
|
|
type: "bi.vertical_adapt", |
|
|
|
|
items: items.left, |
|
|
|
|
hgap: o.lhgap, |
|
|
|
|
lgap: o.llgap, |
|
|
|
|
rgap: o.lrgap |
|
|
|
|
}); |
|
|
|
|
left.element.css("height", "100%"); |
|
|
|
|
BI.createWidget({ |
|
|
|
|
type: "bi.left", |
|
|
|
|
element: this, |
|
|
|
|
items: [left] |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if ("right" in items) { |
|
|
|
|
var right = BI.createWidget({ |
|
|
|
|
type: "bi.vertical_adapt", |
|
|
|
|
items: items.right, |
|
|
|
|
hgap: o.rhgap, |
|
|
|
|
lgap: o.rlgap, |
|
|
|
|
rgap: o.rrgap |
|
|
|
|
}); |
|
|
|
|
right.element.css("height", "100%"); |
|
|
|
|
BI.createWidget({ |
|
|
|
|
type: "bi.right", |
|
|
|
|
element: this, |
|
|
|
|
items: [right] |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
populate: function (items) { |
|
|
|
|
BI.LeftRightVerticalAdaptLayout.superclass.populate.apply(this, arguments); |
|
|
|
|
this._mount(); |
|
|
|
@ -30707,8 +30647,22 @@ BI.LeftVerticalAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
render: function () { |
|
|
|
|
var o = this.options, self = this; |
|
|
|
|
BI.LeftVerticalAdaptLayout.superclass.render.apply(this, arguments); |
|
|
|
|
this.populate(this.options.items); |
|
|
|
|
return { |
|
|
|
|
type: "bi.left", |
|
|
|
|
ref: function (_ref) { |
|
|
|
|
self.layout = _ref; |
|
|
|
|
}, |
|
|
|
|
items: [{ |
|
|
|
|
type: "bi.vertical_adapt", |
|
|
|
|
height: "100%", |
|
|
|
|
items: o.items, |
|
|
|
|
lgap: o.lgap, |
|
|
|
|
hgap: o.hgap, |
|
|
|
|
rgap: o.rgap |
|
|
|
|
}] |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
resize: function () { |
|
|
|
@ -30720,26 +30674,8 @@ BI.LeftVerticalAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
throw new Error("cannot be added"); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
stroke: function (items) { |
|
|
|
|
var o = this.options; |
|
|
|
|
var left = BI.createWidget({ |
|
|
|
|
type: "bi.vertical_adapt", |
|
|
|
|
items: items, |
|
|
|
|
lgap: o.lgap, |
|
|
|
|
hgap: o.hgap, |
|
|
|
|
rgap: o.rgap |
|
|
|
|
}); |
|
|
|
|
left.element.css("height", "100%"); |
|
|
|
|
BI.createWidget({ |
|
|
|
|
type: "bi.left", |
|
|
|
|
element: this, |
|
|
|
|
items: [left] |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
populate: function (items) { |
|
|
|
|
BI.LeftVerticalAdaptLayout.superclass.populate.apply(this, arguments); |
|
|
|
|
this._mount(); |
|
|
|
|
this.layout.populate.apply(this, arguments); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
BI.shortcut("bi.left_vertical_adapt", BI.LeftVerticalAdaptLayout); |
|
|
|
@ -30755,8 +30691,22 @@ BI.RightVerticalAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
render: function () { |
|
|
|
|
var o = this.options, self = this; |
|
|
|
|
BI.RightVerticalAdaptLayout.superclass.render.apply(this, arguments); |
|
|
|
|
this.populate(this.options.items); |
|
|
|
|
return { |
|
|
|
|
type: "bi.right", |
|
|
|
|
ref: function (_ref) { |
|
|
|
|
self.layout = _ref; |
|
|
|
|
}, |
|
|
|
|
items: [{ |
|
|
|
|
type: "bi.vertical_adapt", |
|
|
|
|
height: "100%", |
|
|
|
|
items: o.items, |
|
|
|
|
lgap: o.lgap, |
|
|
|
|
hgap: o.hgap, |
|
|
|
|
rgap: o.rgap |
|
|
|
|
}] |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
resize: function () { |
|
|
|
@ -30768,63 +30718,45 @@ BI.RightVerticalAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
throw new Error("cannot be added"); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
stroke: function (items) { |
|
|
|
|
var o = this.options; |
|
|
|
|
var right = BI.createWidget({ |
|
|
|
|
type: "bi.vertical_adapt", |
|
|
|
|
items: items, |
|
|
|
|
lgap: o.lgap, |
|
|
|
|
hgap: o.hgap, |
|
|
|
|
rgap: o.rgap |
|
|
|
|
}); |
|
|
|
|
right.element.css("height", "100%"); |
|
|
|
|
BI.createWidget({ |
|
|
|
|
type: "bi.right", |
|
|
|
|
element: this, |
|
|
|
|
items: [right] |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
populate: function (items) { |
|
|
|
|
BI.RightVerticalAdaptLayout.superclass.populate.apply(this, arguments); |
|
|
|
|
this._mount(); |
|
|
|
|
this.layout.populate.apply(this, arguments); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
BI.shortcut("bi.right_vertical_adapt", BI.RightVerticalAdaptLayout);/** |
|
|
|
|
* 垂直方向居中容器 |
|
|
|
|
* @class BI.VerticalAdaptLayout |
|
|
|
|
* 使用display:table和display:table-cell实现的horizontal布局 |
|
|
|
|
* @class BI.TableAdaptLayout |
|
|
|
|
* @extends BI.Layout |
|
|
|
|
*/ |
|
|
|
|
BI.VerticalAdaptLayout = BI.inherit(BI.Layout, { |
|
|
|
|
props: { |
|
|
|
|
baseCls: "bi-vertical-adapt-layout", |
|
|
|
|
columnSize: [], |
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Left, |
|
|
|
|
hgap: 0, |
|
|
|
|
vgap: 0, |
|
|
|
|
lgap: 0, |
|
|
|
|
rgap: 0, |
|
|
|
|
tgap: 0, |
|
|
|
|
bgap: 0 |
|
|
|
|
BI.TableAdaptLayout = BI.inherit(BI.Layout, { |
|
|
|
|
props: function () { |
|
|
|
|
return BI.extend(BI.TableAdaptLayout.superclass.props.apply(this, arguments), { |
|
|
|
|
baseCls: "bi-table-center-adapt-layout", |
|
|
|
|
columnSize: [], |
|
|
|
|
verticalAlign: BI.VerticalAlign.Top, |
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Left, |
|
|
|
|
hgap: 0, |
|
|
|
|
vgap: 0, |
|
|
|
|
lgap: 0, |
|
|
|
|
rgap: 0, |
|
|
|
|
tgap: 0, |
|
|
|
|
bgap: 0 |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
render: function () { |
|
|
|
|
BI.VerticalAdaptLayout.superclass.render.apply(this, arguments); |
|
|
|
|
var o = this.options; |
|
|
|
|
this.$table = BI.Widget._renderEngine.createElement("<table>").attr({cellspacing: 0, cellpadding: 0}).css({ |
|
|
|
|
BI.TableAdaptLayout.superclass.render.apply(this, arguments); |
|
|
|
|
this.$table = BI.Widget._renderEngine.createElement("<div>").css({ |
|
|
|
|
position: "relative", |
|
|
|
|
width: o.horizontalAlign === BI.HorizontalAlign.Stretch ? "100%" : "auto", |
|
|
|
|
height: "100%", |
|
|
|
|
"white-space": "nowrap", |
|
|
|
|
"border-spacing": "0px", |
|
|
|
|
border: "none", |
|
|
|
|
"border-collapse": "separate" |
|
|
|
|
display: "table", |
|
|
|
|
height: o.verticalAlign === BI.VerticalAlign.Middle ? "100%" : "auto", |
|
|
|
|
width: o.horizontalAlign === BI.HorizontalAlign.Center ? "100%" : "auto", |
|
|
|
|
"white-space": "nowrap" |
|
|
|
|
}); |
|
|
|
|
this.$tr = BI.Widget._renderEngine.createElement("<tr>"); |
|
|
|
|
this.$tr.appendTo(this.$table); |
|
|
|
|
this.populate(this.options.items); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_addElement: function (i, item) { |
|
|
|
|
|
|
|
|
|
var o = this.options; |
|
|
|
|
var td; |
|
|
|
|
var width = o.columnSize[i] <= 1 ? (o.columnSize[i] * 100 + "%") : o.columnSize[i]; |
|
|
|
@ -30833,28 +30765,25 @@ BI.VerticalAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
w.element.css({position: "relative", top: "0", left: "0", margin: "0px auto"}); |
|
|
|
|
td = BI.createWidget({ |
|
|
|
|
type: "bi.default", |
|
|
|
|
tagName: "td", |
|
|
|
|
attributes: { |
|
|
|
|
width: width |
|
|
|
|
}, |
|
|
|
|
width: width, |
|
|
|
|
items: [w] |
|
|
|
|
}); |
|
|
|
|
this.addWidget(this._getChildName(i), td); |
|
|
|
|
} else { |
|
|
|
|
td = this.getWidgetByName(this._getChildName(i)); |
|
|
|
|
td.element.attr("width", width); |
|
|
|
|
td.element.width(width); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
td.element.css({"max-width": o.columnSize[i] + "px"}); |
|
|
|
|
if (i === 0) { |
|
|
|
|
td.element.addClass("first-element"); |
|
|
|
|
} |
|
|
|
|
td.element.css({ |
|
|
|
|
position: "relative", |
|
|
|
|
height: "100%", |
|
|
|
|
display: "table-cell", |
|
|
|
|
"vertical-align": "middle", |
|
|
|
|
margin: "0", |
|
|
|
|
padding: "0", |
|
|
|
|
border: "none" |
|
|
|
|
height: "100%" |
|
|
|
|
}); |
|
|
|
|
if (o.vgap + o.tgap + (item.tgap || 0) + (item.vgap || 0) !== 0) { |
|
|
|
|
w.element.css({ |
|
|
|
@ -30863,7 +30792,7 @@ BI.VerticalAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
} |
|
|
|
|
if (o.hgap + o.lgap + (item.lgap || 0) + (item.hgap || 0) !== 0) { |
|
|
|
|
w.element.css({ |
|
|
|
|
"margin-left": (i === 0 ? o.hgap : 0) + o.lgap + (item.lgap || 0) + (item.hgap || 0) +"px" |
|
|
|
|
"margin-left": (i === 0 ? o.hgap : 0) + o.lgap + (item.lgap || 0) + (item.hgap || 0) + "px" |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if (o.hgap + o.rgap + (item.rgap || 0) + (item.hgap || 0) !== 0) { |
|
|
|
@ -30880,12 +30809,57 @@ BI.VerticalAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
appendFragment: function (frag) { |
|
|
|
|
this.$tr.append(frag); |
|
|
|
|
this.$table.append(frag); |
|
|
|
|
this.element.append(this.$table); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_getWrapper: function () { |
|
|
|
|
return this.$tr; |
|
|
|
|
resize: function () { |
|
|
|
|
// console.log("center_adapt布局不需要resize");
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
populate: function (items) { |
|
|
|
|
BI.TableAdaptLayout.superclass.populate.apply(this, arguments); |
|
|
|
|
this._mount(); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
BI.shortcut("bi.table_adapt", BI.TableAdaptLayout);/** |
|
|
|
|
* 垂直方向居中容器 |
|
|
|
|
* @class BI.VerticalAdaptLayout |
|
|
|
|
* @extends BI.Layout |
|
|
|
|
*/ |
|
|
|
|
BI.VerticalAdaptLayout = BI.inherit(BI.Layout, { |
|
|
|
|
props: { |
|
|
|
|
baseCls: "bi-vertical-adapt-layout", |
|
|
|
|
columnSize: [], |
|
|
|
|
scrollx: false, |
|
|
|
|
hgap: 0, |
|
|
|
|
vgap: 0, |
|
|
|
|
lgap: 0, |
|
|
|
|
rgap: 0, |
|
|
|
|
tgap: 0, |
|
|
|
|
bgap: 0 |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
render: function () { |
|
|
|
|
var self = this, o = this.options; |
|
|
|
|
BI.VerticalAdaptLayout.superclass.render.apply(this, arguments); |
|
|
|
|
return { |
|
|
|
|
type: "bi.horizontal", |
|
|
|
|
verticalAlign: BI.VerticalAlign.Middle, |
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Left, |
|
|
|
|
columnSize: o.columnSize, |
|
|
|
|
items: o.items, |
|
|
|
|
scrollx: o.scrollx, |
|
|
|
|
ref: function (_ref) { |
|
|
|
|
self.layout = _ref; |
|
|
|
|
}, |
|
|
|
|
hgap: o.hgap, |
|
|
|
|
vgap: o.vgap, |
|
|
|
|
lgap: o.lgap, |
|
|
|
|
rgap: o.rgap, |
|
|
|
|
tgap: o.tgap, |
|
|
|
|
bgap: o.bgap |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
resize: function () { |
|
|
|
@ -30893,8 +30867,7 @@ BI.VerticalAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
populate: function (items) { |
|
|
|
|
BI.VerticalAdaptLayout.superclass.populate.apply(this, arguments); |
|
|
|
|
this._mount(); |
|
|
|
|
this.layout.populate.apply(this, arguments); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
BI.shortcut("bi.vertical_adapt", BI.VerticalAdaptLayout);/** |
|
|
|
@ -31262,106 +31235,6 @@ BI.InlineVerticalAdaptLayout = BI.inherit(BI.Layout, {
|
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
BI.shortcut("bi.inline_vertical_adapt", BI.InlineVerticalAdaptLayout);/** |
|
|
|
|
* 使用display:table和display:table-cell实现的horizontal布局 |
|
|
|
|
* @class BI.TableAdaptLayout |
|
|
|
|
* @extends BI.Layout |
|
|
|
|
*/ |
|
|
|
|
BI.TableAdaptLayout = BI.inherit(BI.Layout, { |
|
|
|
|
props: function () { |
|
|
|
|
return BI.extend(BI.TableAdaptLayout.superclass.props.apply(this, arguments), { |
|
|
|
|
baseCls: "bi-table-center-adapt-layout", |
|
|
|
|
columnSize: [], |
|
|
|
|
verticalAlign: BI.VerticalAlign.Top, |
|
|
|
|
horizontalAlign: BI.HorizontalAlign.Left, |
|
|
|
|
hgap: 0, |
|
|
|
|
vgap: 0, |
|
|
|
|
lgap: 0, |
|
|
|
|
rgap: 0, |
|
|
|
|
tgap: 0, |
|
|
|
|
bgap: 0 |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
render: function () { |
|
|
|
|
var o = this.options; |
|
|
|
|
BI.TableAdaptLayout.superclass.render.apply(this, arguments); |
|
|
|
|
this.$table = BI.Widget._renderEngine.createElement("<div>").css({ |
|
|
|
|
position: "relative", |
|
|
|
|
display: "table", |
|
|
|
|
height: o.verticalAlign === BI.VerticalAlign.Middle ? "100%" : "auto", |
|
|
|
|
width: o.horizontalAlign === BI.HorizontalAlign.Center ? "100%" : "auto", |
|
|
|
|
"white-space": "nowrap" |
|
|
|
|
}); |
|
|
|
|
this.populate(this.options.items); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
_addElement: function (i, item) { |
|
|
|
|
|
|
|
|
|
var o = this.options; |
|
|
|
|
var td; |
|
|
|
|
var width = o.columnSize[i] <= 1 ? (o.columnSize[i] * 100 + "%") : o.columnSize[i]; |
|
|
|
|
if (!this.hasWidget(this._getChildName(i))) { |
|
|
|
|
var w = BI.createWidget(item); |
|
|
|
|
w.element.css({position: "relative", top: "0", left: "0", margin: "0px auto"}); |
|
|
|
|
td = BI.createWidget({ |
|
|
|
|
type: "bi.default", |
|
|
|
|
width: width, |
|
|
|
|
items: [w] |
|
|
|
|
}); |
|
|
|
|
this.addWidget(this._getChildName(i), td); |
|
|
|
|
} else { |
|
|
|
|
td = this.getWidgetByName(this._getChildName(i)); |
|
|
|
|
td.element.width(width); |
|
|
|
|
} |
|
|
|
|
td.element.css({"max-width": o.columnSize[i] + "px"}); |
|
|
|
|
if (i === 0) { |
|
|
|
|
td.element.addClass("first-element"); |
|
|
|
|
} |
|
|
|
|
td.element.css({ |
|
|
|
|
position: "relative", |
|
|
|
|
display: "table-cell", |
|
|
|
|
"vertical-align": "middle", |
|
|
|
|
margin: "0", |
|
|
|
|
padding: "0", |
|
|
|
|
height: "100%" |
|
|
|
|
}); |
|
|
|
|
if (o.vgap + o.tgap + (item.tgap || 0) + (item.vgap || 0) !== 0) { |
|
|
|
|
w.element.css({ |
|
|
|
|
"margin-top": o.vgap + o.tgap + (item.tgap || 0) + (item.vgap || 0) + "px" |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if (o.hgap + o.lgap + (item.lgap || 0) + (item.hgap || 0) !== 0) { |
|
|
|
|
w.element.css({ |
|
|
|
|
"margin-left": (i === 0 ? o.hgap : 0) + o.lgap + (item.lgap || 0) + (item.hgap || 0) + "px" |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if (o.hgap + o.rgap + (item.rgap || 0) + (item.hgap || 0) !== 0) { |
|
|
|
|
w.element.css({ |
|
|
|
|
"margin-right": o.hgap + o.rgap + (item.rgap || 0) + (item.hgap || 0) + "px" |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if (o.vgap + o.bgap + (item.bgap || 0) + (item.vgap || 0) !== 0) { |
|
|
|
|
w.element.css({ |
|
|
|
|
"margin-bottom": o.vgap + o.bgap + (item.bgap || 0) + (item.vgap || 0) + "px" |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
return td; |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
appendFragment: function (frag) { |
|
|
|
|
this.$table.append(frag); |
|
|
|
|
this.element.append(this.$table); |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
resize: function () { |
|
|
|
|
// console.log("center_adapt布局不需要resize");
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
populate: function (items) { |
|
|
|
|
BI.TableAdaptLayout.superclass.populate.apply(this, arguments); |
|
|
|
|
this._mount(); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
BI.shortcut("bi.table_adapt", BI.TableAdaptLayout);/** |
|
|
|
|
*自适应水平和垂直方向都居中容器 |
|
|
|
|
* Created by GUY on 2016/12/2. |
|
|
|
|
* |
|
|
|
|