guy 4 years ago
parent
commit
f18ef63de0
  1. 58
      src/core/platform/web/config.js
  2. 1
      src/core/wrapper/layout/adapt/adapt.table.js
  3. 6
      src/core/wrapper/layout/layout.horizontal.js

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

@ -15,43 +15,17 @@ BI.prepares.push(function () {
};
BI.Plugin.configWidget("bi.horizontal", function (ob) {
var isIE = BI.isIE(), supportFlex = isSupportFlex(), isLessIE8 = isIE && BI.getIEVersion() < 8;
// center_adapt
if (ob.verticalAlign === BI.VerticalAlign.Middle && ob.horizontalAlign === BI.HorizontalAlign.Center) {
if (isLessIE8) {
return ob;
}
return BI.extend(ob, {type: "bi.table_adapt"});
}
// vertical_adapt
if (ob.verticalAlign === BI.VerticalAlign.Middle && ob.horizontalAlign === BI.HorizontalAlign.Left) {
if (isLessIE8) {
return ob;
}
return BI.extend(ob, {type: "bi.table_adapt"});
}
// horizontal_adapt
if (ob.verticalAlign === BI.VerticalAlign.Top && ob.horizontalAlign === BI.HorizontalAlign.Center) {
if (isLessIE8) {
return ob;
}
return BI.extend(ob, {type: "bi.table_adapt"});
if (isLessIE8) {
return ob;
}
if (!isIE) {
if (supportFlex) {
return BI.extend(ob, {type: "bi.flex_horizontal"});
}
if (IE || !supportFlex || (ob.items && ob.items.length > 1)) {
return BI.extend(ob, {type: "bi.table_adapt"});
}
return ob;
return BI.extend(ob, {type: "bi.flex_horizontal"});
});
BI.Plugin.configWidget("bi.center_adapt", function (ob) {
var isIE = BI.isIE(), supportFlex = isSupportFlex(), justOneItem = (ob.items && ob.items.length <= 1);
if (!isIE && supportFlex && justOneItem) {
// 有滚动条的情况下需要用到flex_scrollable_center_adapt布局
if (ob.scrollable === true || ob.scrollx === true || ob.scrolly === true) {
// 不是IE用flex_scrollable_center_adapt布局
return BI.extend(ob, {type: "bi.flex_scrollable_center_adapt"});
}
return BI.extend(ob, {type: "bi.flex_center_adapt"});
}
// 一个item的情况下inline布局睥睨天下
@ -63,60 +37,50 @@ BI.prepares.push(function () {
BI.Plugin.configWidget("bi.vertical_adapt", function (ob) {
var isIE = BI.isIE(), supportFlex = isSupportFlex();
if (!isIE && supportFlex) {
// 有滚动条的情况下需要用到flex_scrollable_center_adapt布局
if (ob.scrollable === true || ob.scrollx === true || ob.scrolly === true) {
// 不是IE用flex__scrollable_center_adapt布局
return BI.extend({}, ob, {type: "bi.flex_scrollable_vertical_center_adapt"});
}
return BI.extend(ob, {type: "bi.flex_vertical_center_adapt"});
}
return BI.extend(ob, {type: "bi.inline_vertical_adapt"});
});
BI.Plugin.configWidget("bi.horizontal_adapt", function (ob) {
if (ob.items && ob.items.length <= 1) {
if (ob.verticalAlign === BI.VerticalAlign.TOP && ob.items && ob.items.length <= 1) {
return BI.extend(ob, {type: "bi.horizontal_auto"});
}
return ob;
});
BI.Plugin.configWidget("bi.float_center_adapt", function (ob) {
if (!BI.isIE() && isSupportFlex()) {
// 有滚动条的情况下需要用到flex_scrollable_center_adapt布局
if (ob.scrollable === true || ob.scrollx === true || ob.scrolly === true) {
// 不是IE用flex_scrollable_center_adapt布局
return BI.extend({}, ob, {type: "bi.flex_scrollable_center_adapt"});
}
return BI.extend(ob, {type: "bi.flex_center_adapt"});
}
return BI.extend(ob, {type: "bi.inline_center_adapt"});
});
BI.Plugin.configWidget("bi.flex_horizontal", function (ob) {
if (ob.scrollable === true || ob.scrolly === true) {
if (ob.scrollable === true || ob.scrollx === true || ob.scrolly === true) {
return BI.extend({}, ob, {type: "bi.flex_scrollable_horizontal"});
}
});
BI.Plugin.configWidget("bi.flex_vertical", function (ob) {
if (ob.scrollable === true || ob.scrollx === true) {
if (ob.scrollable === true || ob.scrollx === true || ob.scrolly === true) {
return BI.extend({}, ob, {type: "bi.flex_scrollable_vertical"});
}
});
BI.Plugin.configWidget("bi.flex_horizontal_adapt", function (ob) {
if (ob.scrollable === true || ob.scrollx === true) {
if (ob.scrollable === true || ob.scrollx === true || ob.scrolly === true) {
return BI.extend({}, ob, {type: "bi.flex_scrollable_horizontal_adapt"});
}
});
BI.Plugin.configWidget("bi.flex_vertical_adapt", function (ob) {
if (ob.scrollable === true || ob.scrolly === true) {
if (ob.scrollable === true || ob.scrollx === true || ob.scrolly === true) {
return BI.extend({}, ob, {type: "bi.flex_scrollable_vertical_adapt"});
}
});
BI.Plugin.configWidget("bi.flex_horizontal_center_adapt", function (ob) {
if (ob.scrollable === true || ob.scrollx === true) {
if (ob.scrollable === true || ob.scrollx === true || ob.scrolly === true) {
return BI.extend({}, ob, {type: "bi.flex_scrollable_horizontal_adapt"});
}
});
BI.Plugin.configWidget("bi.flex_vertical_center_adapt", function (ob) {
if (ob.scrollable === true || ob.scrolly === true) {
if (ob.scrollable === true || ob.scrollx === true || ob.scrolly === true) {
return BI.extend({}, ob, {type: "bi.flex_scrollable_vertical_adapt"});
}
});

1
src/core/wrapper/layout/adapt/adapt.table.js

@ -33,7 +33,6 @@ BI.TableAdaptLayout = BI.inherit(BI.Layout, {
},
_addElement: function (i, item) {
var o = this.options;
var td;
var width = o.columnSize[i] <= 1 ? (o.columnSize[i] * 100 + "%") : o.columnSize[i];

6
src/core/wrapper/layout/layout.horizontal.js

@ -25,8 +25,8 @@ BI.HorizontalLayout = BI.inherit(BI.Layout, {
this.$table = BI.Widget._renderEngine.createElement("<table>").attr({cellspacing: 0, cellpadding: 0}).css({
position: "relative",
"white-space": "nowrap",
height: o.verticalAlign === BI.VerticalAlign.Middle ? "100%" : "auto",
width: (o.horizontalAlign === BI.HorizontalAlign.Center || o.horizontalAlign === BI.HorizontalAlign.Stretch) ? "100%" : "auto",
height: (o.verticalAlign === BI.VerticalAlign.Middle || o.verticalAlign === BI.VerticalAlign.Stretch) ? "100%" : "auto",
"border-spacing": "0px",
border: "none",
"border-collapse": "separate"
@ -79,7 +79,7 @@ BI.HorizontalLayout = 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) {
@ -175,4 +175,4 @@ BI.HorizontalCellLayout = BI.inherit(BI.Layout, {
this._mount();
}
});
BI.shortcut("bi.horizontal_cell", BI.HorizontalCellLayout);
BI.shortcut("bi.horizontal_cell", BI.HorizontalCellLayout);

Loading…
Cancel
Save