Browse Source

Merge pull request #459 in VISUAL/fineui from ~WINDY/fineui:master to master

* commit '038d87c9254d3f673b024bfff20df9e0a3f0e9c3':
  更新
  update
  更新
master
Teller 7 years ago
parent
commit
adc5af5aef
  1. 1
      demo/js/case/combo/demo.search_text_value_combo.js
  2. 2
      demo/js/widget/multiselect/demo.multi_select_combo.js
  3. 62
      dist/_fineui.min.js
  4. 140
      dist/base.js
  5. 714
      dist/bundle.js
  6. 64
      dist/bundle.min.js
  7. 2
      dist/case.js
  8. 3
      dist/demo.js
  9. 714
      dist/fineui.js
  10. 63
      dist/fineui.min.js
  11. 556
      dist/widget.js
  12. 1
      src/base/formula/formulaeditor.js
  13. 10
      src/base/single/button/buttons/button.js
  14. 67
      src/base/table/table.cell.js
  15. 62
      src/base/table/table.header.cell.js
  16. 2
      src/case/combo/searchtextvaluecombo/combo.searchtextvalue.js
  17. 65
      src/widget/previewtable/previewtable.cell.js
  18. 65
      src/widget/previewtable/previewtable.header.cell.js
  19. 426
      src/widget/previewtable/previewtable.js

1
demo/js/case/combo/demo.search_text_value_combo.js

@ -14,6 +14,7 @@ Demo.SearchTextValueCombo = BI.inherit(BI.Widget, {
ref: function () { ref: function () {
combo = this; combo = this;
}, },
warningTitle: "111",
text: "默认值", text: "默认值",
value: 14, value: 14,
width: 300, width: 300,

2
demo/js/widget/multiselect/demo.multi_select_combo.js

@ -9,7 +9,7 @@ Demo.MultiSelectCombo = BI.inherit(BI.Widget, {
_createMultiSelectCombo: function () { _createMultiSelectCombo: function () {
var self = this; var self = this;
var widget = BI.createWidget({ var widget = BI.createWidget({
type: "bi.multi_select_insert_no_bar_combo", type: "bi.multi_select_insert_combo",
itemsCreator: BI.bind(this._itemsCreator, this), itemsCreator: BI.bind(this._itemsCreator, this),
width: 200, width: 200,
value: { value: {

62
dist/_fineui.min.js vendored

File diff suppressed because one or more lines are too long

140
dist/base.js vendored

@ -14740,6 +14740,7 @@ BI.FormulaEditor = BI.inherit(BI.Single, {
break; break;
} }
}); });
return value;
}); });
return v.replaceAll("(\\$\\{.*?\\})\\s", "$1"); return v.replaceAll("(\\$\\{.*?\\})\\s", "$1");
}, },
@ -16720,19 +16721,21 @@ BI.shortcut("bi.image_button", BI.ImageButton);(function ($) {
BI.Button.superclass._init.apply(this, arguments); BI.Button.superclass._init.apply(this, arguments);
var o = this.options, self = this; var o = this.options, self = this;
if (BI.isNumber(o.height) && !o.clear && !o.block) { if (BI.isNumber(o.height) && !o.clear && !o.block) {
this.element.css({height: o.height + "px", lineHeight: o.height + "px"}); this.element.css({height: o.height + "px", lineHeight: (o.height - 2) + "px"});
} else { } else {
this.element.css({lineHeight: o.height + "px"}); this.element.css({lineHeight: (o.height - 2) + "px"});
} }
if (BI.isKey(o.iconCls)) { if (BI.isKey(o.iconCls)) {
this.icon = BI.createWidget({ this.icon = BI.createWidget({
type: "bi.icon", type: "bi.icon",
width: 18 width: 18,
height: o.height - 2
}); });
this.text = BI.createWidget({ this.text = BI.createWidget({
type: "bi.label", type: "bi.label",
text: o.text, text: o.text,
value: o.value value: o.value,
height: o.height - 2
}); });
BI.createWidget({ BI.createWidget({
type: "bi.horizontal_auto", type: "bi.horizontal_auto",
@ -30069,38 +30072,41 @@ BI.NativeTableHorizontalScrollbar = BI.inherit(BI.Widget, {
} }
}); });
BI.NativeTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL"; BI.NativeTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL";
BI.shortcut("bi.native_table_horizontal_scrollbar", BI.NativeTableHorizontalScrollbar);/** BI.shortcut("bi.native_table_horizontal_scrollbar", BI.NativeTableHorizontalScrollbar);/**
* *
* 表格 * 表格
* *
* Created by GUY on 2015/9/22. * Created by GUY on 2015/9/22.
* @class BI.TableCell * @class BI.TableCell
* @extends BI.Single * @extends BI.Single
*/ */
BI.TableCell = BI.inherit(BI.Widget, { BI.TableCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.TableCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.TableCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-table-cell", baseCls: "bi-table-cell",
textAlign: "left", textAlign: "left",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.TableCell.superclass._init.apply(this, arguments); BI.TableCell.superclass._init.apply(this, arguments);
BI.createWidget({ var o = this.options;
type: "bi.label", BI.createWidget({
element: this, type: "bi.label",
whiteSpace: "nowrap", element: this,
textAlign: this.options.textAlign, whiteSpace: o.whiteSpace || "nowrap",
height: this.options.height, textAlign: this.options.textAlign,
text: this.options.text, height: this.options.height,
value: this.options.value, text: this.options.text,
lgap: 5 value: this.options.value,
}); lgap: o.lgap,
} rgap: o.rgap,
}); hgap: o.hgap || 5
});
}
});
BI.shortcut("bi.table_cell", BI.TableCell);/** BI.shortcut("bi.table_cell", BI.TableCell);/**
* *
* 表格单元格 * 表格单元格
@ -32084,35 +32090,39 @@ BI.GridTableHorizontalScrollbar = BI.inherit(BI.Widget, {
} }
}); });
BI.GridTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL"; BI.GridTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL";
BI.shortcut("bi.grid_table_horizontal_scrollbar", BI.GridTableHorizontalScrollbar);/** BI.shortcut("bi.grid_table_horizontal_scrollbar", BI.GridTableHorizontalScrollbar);/**
* *
* 表格 * 表格
* *
* Created by GUY on 2015/9/22. * Created by GUY on 2015/9/22.
* @class BI.TableHeaderCell * @class BI.TableHeaderCell
* @extends BI.Single * @extends BI.Single
*/ */
BI.TableHeaderCell = BI.inherit(BI.Widget, { BI.TableHeaderCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.TableHeaderCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.TableHeaderCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-table-header-cell", baseCls: "bi-table-header-cell",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.TableHeaderCell.superclass._init.apply(this, arguments); BI.TableHeaderCell.superclass._init.apply(this, arguments);
BI.createWidget({ var o = this.options;
type: "bi.label", BI.createWidget({
element: this, type: "bi.label",
textAlign: "center", element: this,
height: this.options.height, textAlign: o.textAlign || "center",
text: this.options.text, height: this.options.height,
value: this.options.value text: this.options.text,
}); value: this.options.value,
} lgap: o.lgap,
}); rgap: o.rgap,
hgap: o.hgap || 5
});
}
});
BI.shortcut("bi.table_header_cell", BI.TableHeaderCell);/** BI.shortcut("bi.table_header_cell", BI.TableHeaderCell);/**
* *
* 表格 * 表格

714
dist/bundle.js vendored

@ -50510,6 +50510,7 @@ BI.FormulaEditor = BI.inherit(BI.Single, {
break; break;
} }
}); });
return value;
}); });
return v.replaceAll("(\\$\\{.*?\\})\\s", "$1"); return v.replaceAll("(\\$\\{.*?\\})\\s", "$1");
}, },
@ -52490,19 +52491,21 @@ BI.shortcut("bi.image_button", BI.ImageButton);(function ($) {
BI.Button.superclass._init.apply(this, arguments); BI.Button.superclass._init.apply(this, arguments);
var o = this.options, self = this; var o = this.options, self = this;
if (BI.isNumber(o.height) && !o.clear && !o.block) { if (BI.isNumber(o.height) && !o.clear && !o.block) {
this.element.css({height: o.height + "px", lineHeight: o.height + "px"}); this.element.css({height: o.height + "px", lineHeight: (o.height - 2) + "px"});
} else { } else {
this.element.css({lineHeight: o.height + "px"}); this.element.css({lineHeight: (o.height - 2) + "px"});
} }
if (BI.isKey(o.iconCls)) { if (BI.isKey(o.iconCls)) {
this.icon = BI.createWidget({ this.icon = BI.createWidget({
type: "bi.icon", type: "bi.icon",
width: 18 width: 18,
height: o.height - 2
}); });
this.text = BI.createWidget({ this.text = BI.createWidget({
type: "bi.label", type: "bi.label",
text: o.text, text: o.text,
value: o.value value: o.value,
height: o.height - 2
}); });
BI.createWidget({ BI.createWidget({
type: "bi.horizontal_auto", type: "bi.horizontal_auto",
@ -65839,38 +65842,41 @@ BI.NativeTableHorizontalScrollbar = BI.inherit(BI.Widget, {
} }
}); });
BI.NativeTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL"; BI.NativeTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL";
BI.shortcut("bi.native_table_horizontal_scrollbar", BI.NativeTableHorizontalScrollbar);/** BI.shortcut("bi.native_table_horizontal_scrollbar", BI.NativeTableHorizontalScrollbar);/**
* *
* 表格 * 表格
* *
* Created by GUY on 2015/9/22. * Created by GUY on 2015/9/22.
* @class BI.TableCell * @class BI.TableCell
* @extends BI.Single * @extends BI.Single
*/ */
BI.TableCell = BI.inherit(BI.Widget, { BI.TableCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.TableCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.TableCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-table-cell", baseCls: "bi-table-cell",
textAlign: "left", textAlign: "left",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.TableCell.superclass._init.apply(this, arguments); BI.TableCell.superclass._init.apply(this, arguments);
BI.createWidget({ var o = this.options;
type: "bi.label", BI.createWidget({
element: this, type: "bi.label",
whiteSpace: "nowrap", element: this,
textAlign: this.options.textAlign, whiteSpace: o.whiteSpace || "nowrap",
height: this.options.height, textAlign: this.options.textAlign,
text: this.options.text, height: this.options.height,
value: this.options.value, text: this.options.text,
lgap: 5 value: this.options.value,
}); lgap: o.lgap,
} rgap: o.rgap,
}); hgap: o.hgap || 5
});
}
});
BI.shortcut("bi.table_cell", BI.TableCell);/** BI.shortcut("bi.table_cell", BI.TableCell);/**
* *
* 表格单元格 * 表格单元格
@ -67854,35 +67860,39 @@ BI.GridTableHorizontalScrollbar = BI.inherit(BI.Widget, {
} }
}); });
BI.GridTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL"; BI.GridTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL";
BI.shortcut("bi.grid_table_horizontal_scrollbar", BI.GridTableHorizontalScrollbar);/** BI.shortcut("bi.grid_table_horizontal_scrollbar", BI.GridTableHorizontalScrollbar);/**
* *
* 表格 * 表格
* *
* Created by GUY on 2015/9/22. * Created by GUY on 2015/9/22.
* @class BI.TableHeaderCell * @class BI.TableHeaderCell
* @extends BI.Single * @extends BI.Single
*/ */
BI.TableHeaderCell = BI.inherit(BI.Widget, { BI.TableHeaderCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.TableHeaderCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.TableHeaderCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-table-header-cell", baseCls: "bi-table-header-cell",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.TableHeaderCell.superclass._init.apply(this, arguments); BI.TableHeaderCell.superclass._init.apply(this, arguments);
BI.createWidget({ var o = this.options;
type: "bi.label", BI.createWidget({
element: this, type: "bi.label",
textAlign: "center", element: this,
height: this.options.height, textAlign: o.textAlign || "center",
text: this.options.text, height: this.options.height,
value: this.options.value text: this.options.text,
}); value: this.options.value,
} lgap: o.lgap,
}); rgap: o.rgap,
hgap: o.hgap || 5
});
}
});
BI.shortcut("bi.table_header_cell", BI.TableHeaderCell);/** BI.shortcut("bi.table_header_cell", BI.TableHeaderCell);/**
* *
* 表格 * 表格
@ -78632,8 +78642,10 @@ BI.SearchTextValueCombo = BI.inherit(BI.Widget, {
}); });
if (BI.isNull(result)) { if (BI.isNull(result)) {
this.element.removeClass("combo-error").addClass("combo-error"); this.element.removeClass("combo-error").addClass("combo-error");
this.trigger.attr("tipType", "warning");
} else { } else {
this.element.removeClass("combo-error"); this.element.removeClass("combo-error");
this.trigger.attr("tipType", "success");
} }
} }
}, },
@ -103436,272 +103448,296 @@ BI.PageTable = BI.inherit(BI.Widget, {
BI.PageTable.superclass.destroy.apply(this, arguments); BI.PageTable.superclass.destroy.apply(this, arguments);
} }
}); });
BI.shortcut("bi.page_table", BI.PageTable);/** BI.shortcut("bi.page_table", BI.PageTable);/**
* 预览表列 * 预览表列
* *
* Created by GUY on 2015/12/25. * Created by GUY on 2015/12/25.
* @class BI.PreviewTableCell * @class BI.PreviewTableCell
* @extends BI.Widget * @extends BI.Widget
*/ */
BI.PreviewTableCell = BI.inherit(BI.Widget, { BI.PreviewTableCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.PreviewTableCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.PreviewTableCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-preview-table-cell", baseCls: "bi-preview-table-cell",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.PreviewTableCell.superclass._init.apply(this, arguments); BI.PreviewTableCell.superclass._init.apply(this, arguments);
var self = this, o = this.options; var self = this, o = this.options;
BI.createWidget({ BI.createWidget({
type: "bi.label", type: "bi.label",
element: this, element: this,
textAlign: "left", textAlign: o.textAlign || "left",
whiteSpace: "normal", whiteSpace: o.whiteSpace || "normal",
height: this.options.height, height: this.options.height,
text: this.options.text, text: this.options.text,
value: this.options.value value: this.options.value,
}); lgap: o.lgap,
} rgap: o.rgap,
}); hgap: o.hgap || 5
BI.shortcut("bi.preview_table_cell", BI.PreviewTableCell);/** });
* 预览表 }
* });
* Created by GUY on 2015/12/25. BI.shortcut("bi.preview_table_cell", BI.PreviewTableCell);/**
* @class BI.PreviewTableHeaderCell * 预览表
* @extends BI.Widget *
*/ * Created by GUY on 2015/12/25.
BI.PreviewTableHeaderCell = BI.inherit(BI.Widget, { * @class BI.PreviewTableHeaderCell
* @extends BI.Widget
_defaultConfig: function () { */
return BI.extend(BI.PreviewTableHeaderCell.superclass._defaultConfig.apply(this, arguments), { BI.PreviewTableHeaderCell = BI.inherit(BI.Widget, {
baseCls: "bi-preview-table-header-cell",
text: "" _defaultConfig: function () {
}); return BI.extend(BI.PreviewTableHeaderCell.superclass._defaultConfig.apply(this, arguments), {
}, baseCls: "bi-preview-table-header-cell",
text: ""
_init: function () { });
BI.PreviewTableHeaderCell.superclass._init.apply(this, arguments); },
var self = this, o = this.options;
_init: function () {
BI.createWidget({ BI.PreviewTableHeaderCell.superclass._init.apply(this, arguments);
type: "bi.label", var self = this, o = this.options;
element: this,
textAlign: "left", BI.createWidget({
whiteSpace: "normal", type: "bi.label",
height: this.options.height, element: this,
text: this.options.text, textAlign: o.textAlign || "left",
value: this.options.value whiteSpace: o.whiteSpace || "normal",
}); height: this.options.height,
} text: this.options.text,
}); value: this.options.value,
BI.shortcut("bi.preview_table_header_cell", BI.PreviewTableHeaderCell);/** lgap: o.lgap,
* 预览表 rgap: o.rgap,
* hgap: o.hgap || 5
* Created by GUY on 2015/12/25. });
* @class BI.PreviewTable }
* @extends BI.Widget });
*/ BI.shortcut("bi.preview_table_header_cell", BI.PreviewTableHeaderCell);/**
BI.PreviewTable = BI.inherit(BI.Widget, { * 预览表
*
_defaultConfig: function () { * Created by GUY on 2015/12/25.
return BI.extend(BI.PreviewTable.superclass._defaultConfig.apply(this, arguments), { * @class BI.PreviewTable
baseCls: "bi-preview-table", * @extends BI.Widget
isNeedFreeze: false, */
freezeCols: [], BI.PreviewTable = BI.inherit(BI.Widget, {
rowSize: null,
columnSize: [], _defaultConfig: function () {
headerRowSize: 30, return BI.extend(BI.PreviewTable.superclass._defaultConfig.apply(this, arguments), {
header: [], baseCls: "bi-preview-table",
items: [] isNeedFreeze: false,
}); freezeCols: [],
}, rowSize: null,
columnSize: [],
_init: function () { headerRowSize: 30,
BI.PreviewTable.superclass._init.apply(this, arguments); header: [],
var self = this, o = this.options; items: []
});
this.table = BI.createWidget({ },
type: "bi.table_view",
element: this, _init: function () {
isNeedResize: false, BI.PreviewTable.superclass._init.apply(this, arguments);
var self = this, o = this.options;
isResizeAdapt: false,
this.table = BI.createWidget({
isNeedFreeze: o.isNeedFreeze, type: "bi.table_view",
freezeCols: o.freezeCols, element: this,
isNeedResize: false,
rowSize: o.rowSize,
columnSize: o.columnSize, isResizeAdapt: false,
headerRowSize: o.headerRowSize,
isNeedFreeze: o.isNeedFreeze,
header: BI.map(o.header, function (i, items) { freezeCols: o.freezeCols,
return BI.map(items, function (j, item) {
return BI.extend({ rowSize: o.rowSize,
type: "bi.preview_table_header_cell" columnSize: o.columnSize,
}, item); headerRowSize: o.headerRowSize,
});
}), header: BI.map(o.header, function (i, items) {
items: BI.map(o.items, function (i, items) { return BI.map(items, function (j, item) {
return BI.map(items, function (j, item) { return BI.extend({
return BI.extend({ type: "bi.preview_table_header_cell"
type: "bi.preview_table_cell" }, item);
}, item); });
}); }),
}) items: BI.map(o.items, function (i, items) {
}); return BI.map(items, function (j, item) {
this.table.on(BI.Table.EVENT_TABLE_AFTER_INIT, function () { return BI.extend({
self.fireEvent(BI.Table.EVENT_TABLE_AFTER_INIT, arguments); type: "bi.preview_table_cell"
}); }, item);
this.table.on(BI.Table.EVENT_TABLE_RESIZE, function () { });
self._adjustColumns(); })
}); });
this._adjustColumns(); this.table.on(BI.Table.EVENT_TABLE_AFTER_INIT, function () {
}, self.fireEvent(BI.Table.EVENT_TABLE_AFTER_INIT, arguments);
});
// 是否有自适应调节的列,即列宽为"" this.table.on(BI.Table.EVENT_TABLE_RESIZE, function () {
_hasAdaptCol: function (columnSize) { self._adjustColumns();
return BI.any(columnSize, function (i, size) { });
return size === ""; this._adjustColumns();
}); },
},
// 是否有自适应调节的列,即列宽为""
_isPercentage: function (columnSize) { _hasAdaptCol: function (columnSize) {
return columnSize[0] <= 1; return BI.any(columnSize, function (i, size) {
}, return size === "";
});
_adjustColumns: function () { },
var self = this, o = this.options;
if (o.isNeedFreeze === true) { _isPercentage: function (columnSize) {
// 如果存在百分比的情况 return columnSize[0] <= 1;
if (this._isPercentage(o.columnSize)) { },
if (this._hasAdaptCol(o.columnSize)) {
var findCols = [], remain = 0; _adjustColumns: function () {
BI.each(o.columnSize, function (i, size) { var self = this, o = this.options;
if (size === "") { if (o.isNeedFreeze === true) {
findCols.push(i); // 如果存在百分比的情况
} else { if (this._isPercentage(o.columnSize)) {
remain += size; if (this._hasAdaptCol(o.columnSize)) {
} var findCols = [], remain = 0;
}); BI.each(o.columnSize, function (i, size) {
remain = 1 - remain; if (size === "") {
var average = remain / findCols.length; findCols.push(i);
BI.each(findCols, function (i, col) { } else {
o.columnSize[col] = average; remain += size;
}); }
} });
var isRight = BI.first(o.freezeCols) !== 0; remain = 1 - remain;
var freezeSize = [], notFreezeSize = []; var average = remain / findCols.length;
BI.each(o.columnSize, function (i, size) { BI.each(findCols, function (i, col) {
if (o.freezeCols.contains(i)) { o.columnSize[col] = average;
freezeSize.push(size); });
} else { }
notFreezeSize.push(size); var isRight = BI.first(o.freezeCols) !== 0;
} var freezeSize = [], notFreezeSize = [];
}); BI.each(o.columnSize, function (i, size) {
var sumFreezeSize = BI.sum(freezeSize), sumNotFreezeSize = BI.sum(notFreezeSize); if (o.freezeCols.contains(i)) {
BI.each(freezeSize, function (i, size) { freezeSize.push(size);
freezeSize[i] = size / sumFreezeSize; } else {
}); notFreezeSize.push(size);
BI.each(notFreezeSize, function (i, size) { }
notFreezeSize[i] = size / sumNotFreezeSize; });
}); var sumFreezeSize = BI.sum(freezeSize), sumNotFreezeSize = BI.sum(notFreezeSize);
this.table.setRegionColumnSize(isRight ? ["fill", sumFreezeSize] : [sumFreezeSize, "fill"]); BI.each(freezeSize, function (i, size) {
this.table.setColumnSize(isRight ? (notFreezeSize.concat(freezeSize)) : (freezeSize.concat(notFreezeSize))); freezeSize[i] = size / sumFreezeSize;
} });
} else { BI.each(notFreezeSize, function (i, size) {
// 如果存在自适应宽度的列或者是百分比计算的列,需要将整个表宽设为100% notFreezeSize[i] = size / sumNotFreezeSize;
if (this._hasAdaptCol(o.columnSize) || this._isPercentage(o.columnSize)) { });
this.table.setRegionColumnSize(["100%"]); this.table.setRegionColumnSize(isRight ? ["fill", sumFreezeSize] : [sumFreezeSize, "fill"]);
} this.table.setColumnSize(isRight ? (notFreezeSize.concat(freezeSize)) : (freezeSize.concat(notFreezeSize)));
} }
}, } else {
// 如果存在自适应宽度的列或者是百分比计算的列,需要将整个表宽设为100%
setColumnSize: function (columnSize) { if (this._hasAdaptCol(o.columnSize) || this._isPercentage(o.columnSize)) {
return this.table.setColumnSize(columnSize); this.table.setRegionColumnSize(["100%"]);
}, }
}
getColumnSize: function () { },
return this.table.getColumnSize();
}, setColumnSize: function (columnSize) {
return this.table.setColumnSize(columnSize);
getCalculateColumnSize: function () { },
return this.table.getCalculateColumnSize();
}, getColumnSize: function () {
return this.table.getColumnSize();
setHeaderColumnSize: function (columnSize) { },
return this.table.setHeaderColumnSize(columnSize);
}, getCalculateColumnSize: function () {
return this.table.getCalculateColumnSize();
setRegionColumnSize: function (columnSize) { },
return this.table.setRegionColumnSize(columnSize);
}, setHeaderColumnSize: function (columnSize) {
return this.table.setHeaderColumnSize(columnSize);
getRegionColumnSize: function () { },
return this.table.getRegionColumnSize();
}, setRegionColumnSize: function (columnSize) {
return this.table.setRegionColumnSize(columnSize);
getCalculateRegionColumnSize: function () { },
return this.table.getCalculateRegionColumnSize();
}, getRegionColumnSize: function () {
return this.table.getRegionColumnSize();
getCalculateRegionRowSize: function () { },
return this.table.getCalculateRegionRowSize();
}, getCalculateRegionColumnSize: function () {
return this.table.getCalculateRegionColumnSize();
getClientRegionColumnSize: function () { },
return this.table.getClientRegionColumnSize();
}, getCalculateRegionRowSize: function () {
return this.table.getCalculateRegionRowSize();
getScrollRegionColumnSize: function () { },
return this.table.getScrollRegionColumnSize();
}, getClientRegionColumnSize: function () {
return this.table.getClientRegionColumnSize();
getScrollRegionRowSize: function () { },
return this.table.getScrollRegionRowSize();
}, getScrollRegionColumnSize: function () {
return this.table.getScrollRegionColumnSize();
hasVerticalScroll: function () { },
return this.table.hasVerticalScroll();
}, getScrollRegionRowSize: function () {
return this.table.getScrollRegionRowSize();
setVerticalScroll: function (scrollTop) { },
return this.table.setVerticalScroll(scrollTop);
}, hasVerticalScroll: function () {
return this.table.hasVerticalScroll();
setLeftHorizontalScroll: function (scrollLeft) { },
return this.table.setLeftHorizontalScroll(scrollLeft);
}, setVerticalScroll: function (scrollTop) {
return this.table.setVerticalScroll(scrollTop);
setRightHorizontalScroll: function (scrollLeft) { },
return this.table.setRightHorizontalScroll(scrollLeft);
}, setLeftHorizontalScroll: function (scrollLeft) {
return this.table.setLeftHorizontalScroll(scrollLeft);
getVerticalScroll: function () { },
return this.table.getVerticalScroll();
}, setRightHorizontalScroll: function (scrollLeft) {
return this.table.setRightHorizontalScroll(scrollLeft);
getLeftHorizontalScroll: function () { },
return this.table.getLeftHorizontalScroll();
}, getVerticalScroll: function () {
return this.table.getVerticalScroll();
getRightHorizontalScroll: function () { },
return this.table.getRightHorizontalScroll();
}, getLeftHorizontalScroll: function () {
return this.table.getLeftHorizontalScroll();
getColumns: function () { },
return this.table.getColumns();
}, getRightHorizontalScroll: function () {
return this.table.getRightHorizontalScroll();
populate: function (items, header) { },
this.table.populate(items, header);
this._adjustColumns(); getColumns: function () {
} return this.table.getColumns();
}); },
BI.PreviewTable.EVENT_CHANGE = "PreviewTable.EVENT_CHANGE";
populate: function (items, header) {
if (items) {
items = BI.map(items, function (i, items) {
return BI.map(items, function (j, item) {
return BI.extend({
type: "bi.preview_table_cell"
}, item);
});
});
}
if (header) {
header = BI.map(header, function (i, items) {
return BI.map(items, function (j, item) {
return BI.extend({
type: "bi.preview_table_header_cell"
}, item);
});
});
}
this.table.populate(items, header);
this._adjustColumns();
}
});
BI.PreviewTable.EVENT_CHANGE = "PreviewTable.EVENT_CHANGE";
BI.shortcut("bi.preview_table", BI.PreviewTable);/** BI.shortcut("bi.preview_table", BI.PreviewTable);/**
* 季度下拉框 * 季度下拉框
* *
@ -113847,13 +113883,15 @@ BI.shortcut("bi.value_chooser_pane", BI.ValueChooserPane);;(function () {
return result; return result;
}; };
var populate = BI.Loader.prototype.populate; _.each(["populate", "addItems", "prependItems"], function (name) {
BI.Loader.prototype.populate = function () { var old = BI.Loader.prototype[name];
pushContext(this); BI.Loader.prototype[name] = function () {
var result = populate.apply(this, arguments); pushContext(this);
popContext(); var result = old.apply(this, arguments);
return result; popContext();
}; return result;
};
});
var _init = BI.Widget.prototype._init; var _init = BI.Widget.prototype._init;
BI.Widget.prototype._init = function () { BI.Widget.prototype._init = function () {

64
dist/bundle.min.js vendored

File diff suppressed because one or more lines are too long

2
dist/case.js vendored

@ -6163,8 +6163,10 @@ BI.SearchTextValueCombo = BI.inherit(BI.Widget, {
}); });
if (BI.isNull(result)) { if (BI.isNull(result)) {
this.element.removeClass("combo-error").addClass("combo-error"); this.element.removeClass("combo-error").addClass("combo-error");
this.trigger.attr("tipType", "warning");
} else { } else {
this.element.removeClass("combo-error"); this.element.removeClass("combo-error");
this.trigger.attr("tipType", "success");
} }
} }
}, },

3
dist/demo.js vendored

@ -2068,6 +2068,7 @@ Demo.SearchTextValueCombo = BI.inherit(BI.Widget, {
ref: function () { ref: function () {
combo = this; combo = this;
}, },
warningTitle: "111",
text: "默认值", text: "默认值",
value: 14, value: 14,
width: 300, width: 300,
@ -12762,7 +12763,7 @@ Demo.MultiSelectCombo = BI.inherit(BI.Widget, {
_createMultiSelectCombo: function () { _createMultiSelectCombo: function () {
var self = this; var self = this;
var widget = BI.createWidget({ var widget = BI.createWidget({
type: "bi.multi_select_insert_no_bar_combo", type: "bi.multi_select_insert_combo",
itemsCreator: BI.bind(this._itemsCreator, this), itemsCreator: BI.bind(this._itemsCreator, this),
width: 200, width: 200,
value: { value: {

714
dist/fineui.js vendored

@ -50753,6 +50753,7 @@ BI.FormulaEditor = BI.inherit(BI.Single, {
break; break;
} }
}); });
return value;
}); });
return v.replaceAll("(\\$\\{.*?\\})\\s", "$1"); return v.replaceAll("(\\$\\{.*?\\})\\s", "$1");
}, },
@ -52733,19 +52734,21 @@ BI.shortcut("bi.image_button", BI.ImageButton);(function ($) {
BI.Button.superclass._init.apply(this, arguments); BI.Button.superclass._init.apply(this, arguments);
var o = this.options, self = this; var o = this.options, self = this;
if (BI.isNumber(o.height) && !o.clear && !o.block) { if (BI.isNumber(o.height) && !o.clear && !o.block) {
this.element.css({height: o.height + "px", lineHeight: o.height + "px"}); this.element.css({height: o.height + "px", lineHeight: (o.height - 2) + "px"});
} else { } else {
this.element.css({lineHeight: o.height + "px"}); this.element.css({lineHeight: (o.height - 2) + "px"});
} }
if (BI.isKey(o.iconCls)) { if (BI.isKey(o.iconCls)) {
this.icon = BI.createWidget({ this.icon = BI.createWidget({
type: "bi.icon", type: "bi.icon",
width: 18 width: 18,
height: o.height - 2
}); });
this.text = BI.createWidget({ this.text = BI.createWidget({
type: "bi.label", type: "bi.label",
text: o.text, text: o.text,
value: o.value value: o.value,
height: o.height - 2
}); });
BI.createWidget({ BI.createWidget({
type: "bi.horizontal_auto", type: "bi.horizontal_auto",
@ -66082,38 +66085,41 @@ BI.NativeTableHorizontalScrollbar = BI.inherit(BI.Widget, {
} }
}); });
BI.NativeTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL"; BI.NativeTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL";
BI.shortcut("bi.native_table_horizontal_scrollbar", BI.NativeTableHorizontalScrollbar);/** BI.shortcut("bi.native_table_horizontal_scrollbar", BI.NativeTableHorizontalScrollbar);/**
* *
* 表格 * 表格
* *
* Created by GUY on 2015/9/22. * Created by GUY on 2015/9/22.
* @class BI.TableCell * @class BI.TableCell
* @extends BI.Single * @extends BI.Single
*/ */
BI.TableCell = BI.inherit(BI.Widget, { BI.TableCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.TableCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.TableCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-table-cell", baseCls: "bi-table-cell",
textAlign: "left", textAlign: "left",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.TableCell.superclass._init.apply(this, arguments); BI.TableCell.superclass._init.apply(this, arguments);
BI.createWidget({ var o = this.options;
type: "bi.label", BI.createWidget({
element: this, type: "bi.label",
whiteSpace: "nowrap", element: this,
textAlign: this.options.textAlign, whiteSpace: o.whiteSpace || "nowrap",
height: this.options.height, textAlign: this.options.textAlign,
text: this.options.text, height: this.options.height,
value: this.options.value, text: this.options.text,
lgap: 5 value: this.options.value,
}); lgap: o.lgap,
} rgap: o.rgap,
}); hgap: o.hgap || 5
});
}
});
BI.shortcut("bi.table_cell", BI.TableCell);/** BI.shortcut("bi.table_cell", BI.TableCell);/**
* *
* 表格单元格 * 表格单元格
@ -68097,35 +68103,39 @@ BI.GridTableHorizontalScrollbar = BI.inherit(BI.Widget, {
} }
}); });
BI.GridTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL"; BI.GridTableHorizontalScrollbar.EVENT_SCROLL = "EVENT_SCROLL";
BI.shortcut("bi.grid_table_horizontal_scrollbar", BI.GridTableHorizontalScrollbar);/** BI.shortcut("bi.grid_table_horizontal_scrollbar", BI.GridTableHorizontalScrollbar);/**
* *
* 表格 * 表格
* *
* Created by GUY on 2015/9/22. * Created by GUY on 2015/9/22.
* @class BI.TableHeaderCell * @class BI.TableHeaderCell
* @extends BI.Single * @extends BI.Single
*/ */
BI.TableHeaderCell = BI.inherit(BI.Widget, { BI.TableHeaderCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.TableHeaderCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.TableHeaderCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-table-header-cell", baseCls: "bi-table-header-cell",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.TableHeaderCell.superclass._init.apply(this, arguments); BI.TableHeaderCell.superclass._init.apply(this, arguments);
BI.createWidget({ var o = this.options;
type: "bi.label", BI.createWidget({
element: this, type: "bi.label",
textAlign: "center", element: this,
height: this.options.height, textAlign: o.textAlign || "center",
text: this.options.text, height: this.options.height,
value: this.options.value text: this.options.text,
}); value: this.options.value,
} lgap: o.lgap,
}); rgap: o.rgap,
hgap: o.hgap || 5
});
}
});
BI.shortcut("bi.table_header_cell", BI.TableHeaderCell);/** BI.shortcut("bi.table_header_cell", BI.TableHeaderCell);/**
* *
* 表格 * 表格
@ -78875,8 +78885,10 @@ BI.SearchTextValueCombo = BI.inherit(BI.Widget, {
}); });
if (BI.isNull(result)) { if (BI.isNull(result)) {
this.element.removeClass("combo-error").addClass("combo-error"); this.element.removeClass("combo-error").addClass("combo-error");
this.trigger.attr("tipType", "warning");
} else { } else {
this.element.removeClass("combo-error"); this.element.removeClass("combo-error");
this.trigger.attr("tipType", "success");
} }
} }
}, },
@ -103679,272 +103691,296 @@ BI.PageTable = BI.inherit(BI.Widget, {
BI.PageTable.superclass.destroy.apply(this, arguments); BI.PageTable.superclass.destroy.apply(this, arguments);
} }
}); });
BI.shortcut("bi.page_table", BI.PageTable);/** BI.shortcut("bi.page_table", BI.PageTable);/**
* 预览表列 * 预览表列
* *
* Created by GUY on 2015/12/25. * Created by GUY on 2015/12/25.
* @class BI.PreviewTableCell * @class BI.PreviewTableCell
* @extends BI.Widget * @extends BI.Widget
*/ */
BI.PreviewTableCell = BI.inherit(BI.Widget, { BI.PreviewTableCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.PreviewTableCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.PreviewTableCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-preview-table-cell", baseCls: "bi-preview-table-cell",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.PreviewTableCell.superclass._init.apply(this, arguments); BI.PreviewTableCell.superclass._init.apply(this, arguments);
var self = this, o = this.options; var self = this, o = this.options;
BI.createWidget({ BI.createWidget({
type: "bi.label", type: "bi.label",
element: this, element: this,
textAlign: "left", textAlign: o.textAlign || "left",
whiteSpace: "normal", whiteSpace: o.whiteSpace || "normal",
height: this.options.height, height: this.options.height,
text: this.options.text, text: this.options.text,
value: this.options.value value: this.options.value,
}); lgap: o.lgap,
} rgap: o.rgap,
}); hgap: o.hgap || 5
BI.shortcut("bi.preview_table_cell", BI.PreviewTableCell);/** });
* 预览表 }
* });
* Created by GUY on 2015/12/25. BI.shortcut("bi.preview_table_cell", BI.PreviewTableCell);/**
* @class BI.PreviewTableHeaderCell * 预览表
* @extends BI.Widget *
*/ * Created by GUY on 2015/12/25.
BI.PreviewTableHeaderCell = BI.inherit(BI.Widget, { * @class BI.PreviewTableHeaderCell
* @extends BI.Widget
_defaultConfig: function () { */
return BI.extend(BI.PreviewTableHeaderCell.superclass._defaultConfig.apply(this, arguments), { BI.PreviewTableHeaderCell = BI.inherit(BI.Widget, {
baseCls: "bi-preview-table-header-cell",
text: "" _defaultConfig: function () {
}); return BI.extend(BI.PreviewTableHeaderCell.superclass._defaultConfig.apply(this, arguments), {
}, baseCls: "bi-preview-table-header-cell",
text: ""
_init: function () { });
BI.PreviewTableHeaderCell.superclass._init.apply(this, arguments); },
var self = this, o = this.options;
_init: function () {
BI.createWidget({ BI.PreviewTableHeaderCell.superclass._init.apply(this, arguments);
type: "bi.label", var self = this, o = this.options;
element: this,
textAlign: "left", BI.createWidget({
whiteSpace: "normal", type: "bi.label",
height: this.options.height, element: this,
text: this.options.text, textAlign: o.textAlign || "left",
value: this.options.value whiteSpace: o.whiteSpace || "normal",
}); height: this.options.height,
} text: this.options.text,
}); value: this.options.value,
BI.shortcut("bi.preview_table_header_cell", BI.PreviewTableHeaderCell);/** lgap: o.lgap,
* 预览表 rgap: o.rgap,
* hgap: o.hgap || 5
* Created by GUY on 2015/12/25. });
* @class BI.PreviewTable }
* @extends BI.Widget });
*/ BI.shortcut("bi.preview_table_header_cell", BI.PreviewTableHeaderCell);/**
BI.PreviewTable = BI.inherit(BI.Widget, { * 预览表
*
_defaultConfig: function () { * Created by GUY on 2015/12/25.
return BI.extend(BI.PreviewTable.superclass._defaultConfig.apply(this, arguments), { * @class BI.PreviewTable
baseCls: "bi-preview-table", * @extends BI.Widget
isNeedFreeze: false, */
freezeCols: [], BI.PreviewTable = BI.inherit(BI.Widget, {
rowSize: null,
columnSize: [], _defaultConfig: function () {
headerRowSize: 30, return BI.extend(BI.PreviewTable.superclass._defaultConfig.apply(this, arguments), {
header: [], baseCls: "bi-preview-table",
items: [] isNeedFreeze: false,
}); freezeCols: [],
}, rowSize: null,
columnSize: [],
_init: function () { headerRowSize: 30,
BI.PreviewTable.superclass._init.apply(this, arguments); header: [],
var self = this, o = this.options; items: []
});
this.table = BI.createWidget({ },
type: "bi.table_view",
element: this, _init: function () {
isNeedResize: false, BI.PreviewTable.superclass._init.apply(this, arguments);
var self = this, o = this.options;
isResizeAdapt: false,
this.table = BI.createWidget({
isNeedFreeze: o.isNeedFreeze, type: "bi.table_view",
freezeCols: o.freezeCols, element: this,
isNeedResize: false,
rowSize: o.rowSize,
columnSize: o.columnSize, isResizeAdapt: false,
headerRowSize: o.headerRowSize,
isNeedFreeze: o.isNeedFreeze,
header: BI.map(o.header, function (i, items) { freezeCols: o.freezeCols,
return BI.map(items, function (j, item) {
return BI.extend({ rowSize: o.rowSize,
type: "bi.preview_table_header_cell" columnSize: o.columnSize,
}, item); headerRowSize: o.headerRowSize,
});
}), header: BI.map(o.header, function (i, items) {
items: BI.map(o.items, function (i, items) { return BI.map(items, function (j, item) {
return BI.map(items, function (j, item) { return BI.extend({
return BI.extend({ type: "bi.preview_table_header_cell"
type: "bi.preview_table_cell" }, item);
}, item); });
}); }),
}) items: BI.map(o.items, function (i, items) {
}); return BI.map(items, function (j, item) {
this.table.on(BI.Table.EVENT_TABLE_AFTER_INIT, function () { return BI.extend({
self.fireEvent(BI.Table.EVENT_TABLE_AFTER_INIT, arguments); type: "bi.preview_table_cell"
}); }, item);
this.table.on(BI.Table.EVENT_TABLE_RESIZE, function () { });
self._adjustColumns(); })
}); });
this._adjustColumns(); this.table.on(BI.Table.EVENT_TABLE_AFTER_INIT, function () {
}, self.fireEvent(BI.Table.EVENT_TABLE_AFTER_INIT, arguments);
});
// 是否有自适应调节的列,即列宽为"" this.table.on(BI.Table.EVENT_TABLE_RESIZE, function () {
_hasAdaptCol: function (columnSize) { self._adjustColumns();
return BI.any(columnSize, function (i, size) { });
return size === ""; this._adjustColumns();
}); },
},
// 是否有自适应调节的列,即列宽为""
_isPercentage: function (columnSize) { _hasAdaptCol: function (columnSize) {
return columnSize[0] <= 1; return BI.any(columnSize, function (i, size) {
}, return size === "";
});
_adjustColumns: function () { },
var self = this, o = this.options;
if (o.isNeedFreeze === true) { _isPercentage: function (columnSize) {
// 如果存在百分比的情况 return columnSize[0] <= 1;
if (this._isPercentage(o.columnSize)) { },
if (this._hasAdaptCol(o.columnSize)) {
var findCols = [], remain = 0; _adjustColumns: function () {
BI.each(o.columnSize, function (i, size) { var self = this, o = this.options;
if (size === "") { if (o.isNeedFreeze === true) {
findCols.push(i); // 如果存在百分比的情况
} else { if (this._isPercentage(o.columnSize)) {
remain += size; if (this._hasAdaptCol(o.columnSize)) {
} var findCols = [], remain = 0;
}); BI.each(o.columnSize, function (i, size) {
remain = 1 - remain; if (size === "") {
var average = remain / findCols.length; findCols.push(i);
BI.each(findCols, function (i, col) { } else {
o.columnSize[col] = average; remain += size;
}); }
} });
var isRight = BI.first(o.freezeCols) !== 0; remain = 1 - remain;
var freezeSize = [], notFreezeSize = []; var average = remain / findCols.length;
BI.each(o.columnSize, function (i, size) { BI.each(findCols, function (i, col) {
if (o.freezeCols.contains(i)) { o.columnSize[col] = average;
freezeSize.push(size); });
} else { }
notFreezeSize.push(size); var isRight = BI.first(o.freezeCols) !== 0;
} var freezeSize = [], notFreezeSize = [];
}); BI.each(o.columnSize, function (i, size) {
var sumFreezeSize = BI.sum(freezeSize), sumNotFreezeSize = BI.sum(notFreezeSize); if (o.freezeCols.contains(i)) {
BI.each(freezeSize, function (i, size) { freezeSize.push(size);
freezeSize[i] = size / sumFreezeSize; } else {
}); notFreezeSize.push(size);
BI.each(notFreezeSize, function (i, size) { }
notFreezeSize[i] = size / sumNotFreezeSize; });
}); var sumFreezeSize = BI.sum(freezeSize), sumNotFreezeSize = BI.sum(notFreezeSize);
this.table.setRegionColumnSize(isRight ? ["fill", sumFreezeSize] : [sumFreezeSize, "fill"]); BI.each(freezeSize, function (i, size) {
this.table.setColumnSize(isRight ? (notFreezeSize.concat(freezeSize)) : (freezeSize.concat(notFreezeSize))); freezeSize[i] = size / sumFreezeSize;
} });
} else { BI.each(notFreezeSize, function (i, size) {
// 如果存在自适应宽度的列或者是百分比计算的列,需要将整个表宽设为100% notFreezeSize[i] = size / sumNotFreezeSize;
if (this._hasAdaptCol(o.columnSize) || this._isPercentage(o.columnSize)) { });
this.table.setRegionColumnSize(["100%"]); this.table.setRegionColumnSize(isRight ? ["fill", sumFreezeSize] : [sumFreezeSize, "fill"]);
} this.table.setColumnSize(isRight ? (notFreezeSize.concat(freezeSize)) : (freezeSize.concat(notFreezeSize)));
} }
}, } else {
// 如果存在自适应宽度的列或者是百分比计算的列,需要将整个表宽设为100%
setColumnSize: function (columnSize) { if (this._hasAdaptCol(o.columnSize) || this._isPercentage(o.columnSize)) {
return this.table.setColumnSize(columnSize); this.table.setRegionColumnSize(["100%"]);
}, }
}
getColumnSize: function () { },
return this.table.getColumnSize();
}, setColumnSize: function (columnSize) {
return this.table.setColumnSize(columnSize);
getCalculateColumnSize: function () { },
return this.table.getCalculateColumnSize();
}, getColumnSize: function () {
return this.table.getColumnSize();
setHeaderColumnSize: function (columnSize) { },
return this.table.setHeaderColumnSize(columnSize);
}, getCalculateColumnSize: function () {
return this.table.getCalculateColumnSize();
setRegionColumnSize: function (columnSize) { },
return this.table.setRegionColumnSize(columnSize);
}, setHeaderColumnSize: function (columnSize) {
return this.table.setHeaderColumnSize(columnSize);
getRegionColumnSize: function () { },
return this.table.getRegionColumnSize();
}, setRegionColumnSize: function (columnSize) {
return this.table.setRegionColumnSize(columnSize);
getCalculateRegionColumnSize: function () { },
return this.table.getCalculateRegionColumnSize();
}, getRegionColumnSize: function () {
return this.table.getRegionColumnSize();
getCalculateRegionRowSize: function () { },
return this.table.getCalculateRegionRowSize();
}, getCalculateRegionColumnSize: function () {
return this.table.getCalculateRegionColumnSize();
getClientRegionColumnSize: function () { },
return this.table.getClientRegionColumnSize();
}, getCalculateRegionRowSize: function () {
return this.table.getCalculateRegionRowSize();
getScrollRegionColumnSize: function () { },
return this.table.getScrollRegionColumnSize();
}, getClientRegionColumnSize: function () {
return this.table.getClientRegionColumnSize();
getScrollRegionRowSize: function () { },
return this.table.getScrollRegionRowSize();
}, getScrollRegionColumnSize: function () {
return this.table.getScrollRegionColumnSize();
hasVerticalScroll: function () { },
return this.table.hasVerticalScroll();
}, getScrollRegionRowSize: function () {
return this.table.getScrollRegionRowSize();
setVerticalScroll: function (scrollTop) { },
return this.table.setVerticalScroll(scrollTop);
}, hasVerticalScroll: function () {
return this.table.hasVerticalScroll();
setLeftHorizontalScroll: function (scrollLeft) { },
return this.table.setLeftHorizontalScroll(scrollLeft);
}, setVerticalScroll: function (scrollTop) {
return this.table.setVerticalScroll(scrollTop);
setRightHorizontalScroll: function (scrollLeft) { },
return this.table.setRightHorizontalScroll(scrollLeft);
}, setLeftHorizontalScroll: function (scrollLeft) {
return this.table.setLeftHorizontalScroll(scrollLeft);
getVerticalScroll: function () { },
return this.table.getVerticalScroll();
}, setRightHorizontalScroll: function (scrollLeft) {
return this.table.setRightHorizontalScroll(scrollLeft);
getLeftHorizontalScroll: function () { },
return this.table.getLeftHorizontalScroll();
}, getVerticalScroll: function () {
return this.table.getVerticalScroll();
getRightHorizontalScroll: function () { },
return this.table.getRightHorizontalScroll();
}, getLeftHorizontalScroll: function () {
return this.table.getLeftHorizontalScroll();
getColumns: function () { },
return this.table.getColumns();
}, getRightHorizontalScroll: function () {
return this.table.getRightHorizontalScroll();
populate: function (items, header) { },
this.table.populate(items, header);
this._adjustColumns(); getColumns: function () {
} return this.table.getColumns();
}); },
BI.PreviewTable.EVENT_CHANGE = "PreviewTable.EVENT_CHANGE";
populate: function (items, header) {
if (items) {
items = BI.map(items, function (i, items) {
return BI.map(items, function (j, item) {
return BI.extend({
type: "bi.preview_table_cell"
}, item);
});
});
}
if (header) {
header = BI.map(header, function (i, items) {
return BI.map(items, function (j, item) {
return BI.extend({
type: "bi.preview_table_header_cell"
}, item);
});
});
}
this.table.populate(items, header);
this._adjustColumns();
}
});
BI.PreviewTable.EVENT_CHANGE = "PreviewTable.EVENT_CHANGE";
BI.shortcut("bi.preview_table", BI.PreviewTable);/** BI.shortcut("bi.preview_table", BI.PreviewTable);/**
* 季度下拉框 * 季度下拉框
* *
@ -114090,13 +114126,15 @@ BI.shortcut("bi.value_chooser_pane", BI.ValueChooserPane);;(function () {
return result; return result;
}; };
var populate = BI.Loader.prototype.populate; _.each(["populate", "addItems", "prependItems"], function (name) {
BI.Loader.prototype.populate = function () { var old = BI.Loader.prototype[name];
pushContext(this); BI.Loader.prototype[name] = function () {
var result = populate.apply(this, arguments); pushContext(this);
popContext(); var result = old.apply(this, arguments);
return result; popContext();
}; return result;
};
});
var _init = BI.Widget.prototype._init; var _init = BI.Widget.prototype._init;
BI.Widget.prototype._init = function () { BI.Widget.prototype._init = function () {

63
dist/fineui.min.js vendored

File diff suppressed because one or more lines are too long

556
dist/widget.js vendored

@ -15824,272 +15824,296 @@ BI.PageTable = BI.inherit(BI.Widget, {
BI.PageTable.superclass.destroy.apply(this, arguments); BI.PageTable.superclass.destroy.apply(this, arguments);
} }
}); });
BI.shortcut("bi.page_table", BI.PageTable);/** BI.shortcut("bi.page_table", BI.PageTable);/**
* 预览表列 * 预览表列
* *
* Created by GUY on 2015/12/25. * Created by GUY on 2015/12/25.
* @class BI.PreviewTableCell * @class BI.PreviewTableCell
* @extends BI.Widget * @extends BI.Widget
*/ */
BI.PreviewTableCell = BI.inherit(BI.Widget, { BI.PreviewTableCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.PreviewTableCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.PreviewTableCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-preview-table-cell", baseCls: "bi-preview-table-cell",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.PreviewTableCell.superclass._init.apply(this, arguments); BI.PreviewTableCell.superclass._init.apply(this, arguments);
var self = this, o = this.options; var self = this, o = this.options;
BI.createWidget({ BI.createWidget({
type: "bi.label", type: "bi.label",
element: this, element: this,
textAlign: "left", textAlign: o.textAlign || "left",
whiteSpace: "normal", whiteSpace: o.whiteSpace || "normal",
height: this.options.height, height: this.options.height,
text: this.options.text, text: this.options.text,
value: this.options.value value: this.options.value,
}); lgap: o.lgap,
} rgap: o.rgap,
}); hgap: o.hgap || 5
BI.shortcut("bi.preview_table_cell", BI.PreviewTableCell);/** });
* 预览表 }
* });
* Created by GUY on 2015/12/25. BI.shortcut("bi.preview_table_cell", BI.PreviewTableCell);/**
* @class BI.PreviewTableHeaderCell * 预览表
* @extends BI.Widget *
*/ * Created by GUY on 2015/12/25.
BI.PreviewTableHeaderCell = BI.inherit(BI.Widget, { * @class BI.PreviewTableHeaderCell
* @extends BI.Widget
_defaultConfig: function () { */
return BI.extend(BI.PreviewTableHeaderCell.superclass._defaultConfig.apply(this, arguments), { BI.PreviewTableHeaderCell = BI.inherit(BI.Widget, {
baseCls: "bi-preview-table-header-cell",
text: "" _defaultConfig: function () {
}); return BI.extend(BI.PreviewTableHeaderCell.superclass._defaultConfig.apply(this, arguments), {
}, baseCls: "bi-preview-table-header-cell",
text: ""
_init: function () { });
BI.PreviewTableHeaderCell.superclass._init.apply(this, arguments); },
var self = this, o = this.options;
_init: function () {
BI.createWidget({ BI.PreviewTableHeaderCell.superclass._init.apply(this, arguments);
type: "bi.label", var self = this, o = this.options;
element: this,
textAlign: "left", BI.createWidget({
whiteSpace: "normal", type: "bi.label",
height: this.options.height, element: this,
text: this.options.text, textAlign: o.textAlign || "left",
value: this.options.value whiteSpace: o.whiteSpace || "normal",
}); height: this.options.height,
} text: this.options.text,
}); value: this.options.value,
BI.shortcut("bi.preview_table_header_cell", BI.PreviewTableHeaderCell);/** lgap: o.lgap,
* 预览表 rgap: o.rgap,
* hgap: o.hgap || 5
* Created by GUY on 2015/12/25. });
* @class BI.PreviewTable }
* @extends BI.Widget });
*/ BI.shortcut("bi.preview_table_header_cell", BI.PreviewTableHeaderCell);/**
BI.PreviewTable = BI.inherit(BI.Widget, { * 预览表
*
_defaultConfig: function () { * Created by GUY on 2015/12/25.
return BI.extend(BI.PreviewTable.superclass._defaultConfig.apply(this, arguments), { * @class BI.PreviewTable
baseCls: "bi-preview-table", * @extends BI.Widget
isNeedFreeze: false, */
freezeCols: [], BI.PreviewTable = BI.inherit(BI.Widget, {
rowSize: null,
columnSize: [], _defaultConfig: function () {
headerRowSize: 30, return BI.extend(BI.PreviewTable.superclass._defaultConfig.apply(this, arguments), {
header: [], baseCls: "bi-preview-table",
items: [] isNeedFreeze: false,
}); freezeCols: [],
}, rowSize: null,
columnSize: [],
_init: function () { headerRowSize: 30,
BI.PreviewTable.superclass._init.apply(this, arguments); header: [],
var self = this, o = this.options; items: []
});
this.table = BI.createWidget({ },
type: "bi.table_view",
element: this, _init: function () {
isNeedResize: false, BI.PreviewTable.superclass._init.apply(this, arguments);
var self = this, o = this.options;
isResizeAdapt: false,
this.table = BI.createWidget({
isNeedFreeze: o.isNeedFreeze, type: "bi.table_view",
freezeCols: o.freezeCols, element: this,
isNeedResize: false,
rowSize: o.rowSize,
columnSize: o.columnSize, isResizeAdapt: false,
headerRowSize: o.headerRowSize,
isNeedFreeze: o.isNeedFreeze,
header: BI.map(o.header, function (i, items) { freezeCols: o.freezeCols,
return BI.map(items, function (j, item) {
return BI.extend({ rowSize: o.rowSize,
type: "bi.preview_table_header_cell" columnSize: o.columnSize,
}, item); headerRowSize: o.headerRowSize,
});
}), header: BI.map(o.header, function (i, items) {
items: BI.map(o.items, function (i, items) { return BI.map(items, function (j, item) {
return BI.map(items, function (j, item) { return BI.extend({
return BI.extend({ type: "bi.preview_table_header_cell"
type: "bi.preview_table_cell" }, item);
}, item); });
}); }),
}) items: BI.map(o.items, function (i, items) {
}); return BI.map(items, function (j, item) {
this.table.on(BI.Table.EVENT_TABLE_AFTER_INIT, function () { return BI.extend({
self.fireEvent(BI.Table.EVENT_TABLE_AFTER_INIT, arguments); type: "bi.preview_table_cell"
}); }, item);
this.table.on(BI.Table.EVENT_TABLE_RESIZE, function () { });
self._adjustColumns(); })
}); });
this._adjustColumns(); this.table.on(BI.Table.EVENT_TABLE_AFTER_INIT, function () {
}, self.fireEvent(BI.Table.EVENT_TABLE_AFTER_INIT, arguments);
});
// 是否有自适应调节的列,即列宽为"" this.table.on(BI.Table.EVENT_TABLE_RESIZE, function () {
_hasAdaptCol: function (columnSize) { self._adjustColumns();
return BI.any(columnSize, function (i, size) { });
return size === ""; this._adjustColumns();
}); },
},
// 是否有自适应调节的列,即列宽为""
_isPercentage: function (columnSize) { _hasAdaptCol: function (columnSize) {
return columnSize[0] <= 1; return BI.any(columnSize, function (i, size) {
}, return size === "";
});
_adjustColumns: function () { },
var self = this, o = this.options;
if (o.isNeedFreeze === true) { _isPercentage: function (columnSize) {
// 如果存在百分比的情况 return columnSize[0] <= 1;
if (this._isPercentage(o.columnSize)) { },
if (this._hasAdaptCol(o.columnSize)) {
var findCols = [], remain = 0; _adjustColumns: function () {
BI.each(o.columnSize, function (i, size) { var self = this, o = this.options;
if (size === "") { if (o.isNeedFreeze === true) {
findCols.push(i); // 如果存在百分比的情况
} else { if (this._isPercentage(o.columnSize)) {
remain += size; if (this._hasAdaptCol(o.columnSize)) {
} var findCols = [], remain = 0;
}); BI.each(o.columnSize, function (i, size) {
remain = 1 - remain; if (size === "") {
var average = remain / findCols.length; findCols.push(i);
BI.each(findCols, function (i, col) { } else {
o.columnSize[col] = average; remain += size;
}); }
} });
var isRight = BI.first(o.freezeCols) !== 0; remain = 1 - remain;
var freezeSize = [], notFreezeSize = []; var average = remain / findCols.length;
BI.each(o.columnSize, function (i, size) { BI.each(findCols, function (i, col) {
if (o.freezeCols.contains(i)) { o.columnSize[col] = average;
freezeSize.push(size); });
} else { }
notFreezeSize.push(size); var isRight = BI.first(o.freezeCols) !== 0;
} var freezeSize = [], notFreezeSize = [];
}); BI.each(o.columnSize, function (i, size) {
var sumFreezeSize = BI.sum(freezeSize), sumNotFreezeSize = BI.sum(notFreezeSize); if (o.freezeCols.contains(i)) {
BI.each(freezeSize, function (i, size) { freezeSize.push(size);
freezeSize[i] = size / sumFreezeSize; } else {
}); notFreezeSize.push(size);
BI.each(notFreezeSize, function (i, size) { }
notFreezeSize[i] = size / sumNotFreezeSize; });
}); var sumFreezeSize = BI.sum(freezeSize), sumNotFreezeSize = BI.sum(notFreezeSize);
this.table.setRegionColumnSize(isRight ? ["fill", sumFreezeSize] : [sumFreezeSize, "fill"]); BI.each(freezeSize, function (i, size) {
this.table.setColumnSize(isRight ? (notFreezeSize.concat(freezeSize)) : (freezeSize.concat(notFreezeSize))); freezeSize[i] = size / sumFreezeSize;
} });
} else { BI.each(notFreezeSize, function (i, size) {
// 如果存在自适应宽度的列或者是百分比计算的列,需要将整个表宽设为100% notFreezeSize[i] = size / sumNotFreezeSize;
if (this._hasAdaptCol(o.columnSize) || this._isPercentage(o.columnSize)) { });
this.table.setRegionColumnSize(["100%"]); this.table.setRegionColumnSize(isRight ? ["fill", sumFreezeSize] : [sumFreezeSize, "fill"]);
} this.table.setColumnSize(isRight ? (notFreezeSize.concat(freezeSize)) : (freezeSize.concat(notFreezeSize)));
} }
}, } else {
// 如果存在自适应宽度的列或者是百分比计算的列,需要将整个表宽设为100%
setColumnSize: function (columnSize) { if (this._hasAdaptCol(o.columnSize) || this._isPercentage(o.columnSize)) {
return this.table.setColumnSize(columnSize); this.table.setRegionColumnSize(["100%"]);
}, }
}
getColumnSize: function () { },
return this.table.getColumnSize();
}, setColumnSize: function (columnSize) {
return this.table.setColumnSize(columnSize);
getCalculateColumnSize: function () { },
return this.table.getCalculateColumnSize();
}, getColumnSize: function () {
return this.table.getColumnSize();
setHeaderColumnSize: function (columnSize) { },
return this.table.setHeaderColumnSize(columnSize);
}, getCalculateColumnSize: function () {
return this.table.getCalculateColumnSize();
setRegionColumnSize: function (columnSize) { },
return this.table.setRegionColumnSize(columnSize);
}, setHeaderColumnSize: function (columnSize) {
return this.table.setHeaderColumnSize(columnSize);
getRegionColumnSize: function () { },
return this.table.getRegionColumnSize();
}, setRegionColumnSize: function (columnSize) {
return this.table.setRegionColumnSize(columnSize);
getCalculateRegionColumnSize: function () { },
return this.table.getCalculateRegionColumnSize();
}, getRegionColumnSize: function () {
return this.table.getRegionColumnSize();
getCalculateRegionRowSize: function () { },
return this.table.getCalculateRegionRowSize();
}, getCalculateRegionColumnSize: function () {
return this.table.getCalculateRegionColumnSize();
getClientRegionColumnSize: function () { },
return this.table.getClientRegionColumnSize();
}, getCalculateRegionRowSize: function () {
return this.table.getCalculateRegionRowSize();
getScrollRegionColumnSize: function () { },
return this.table.getScrollRegionColumnSize();
}, getClientRegionColumnSize: function () {
return this.table.getClientRegionColumnSize();
getScrollRegionRowSize: function () { },
return this.table.getScrollRegionRowSize();
}, getScrollRegionColumnSize: function () {
return this.table.getScrollRegionColumnSize();
hasVerticalScroll: function () { },
return this.table.hasVerticalScroll();
}, getScrollRegionRowSize: function () {
return this.table.getScrollRegionRowSize();
setVerticalScroll: function (scrollTop) { },
return this.table.setVerticalScroll(scrollTop);
}, hasVerticalScroll: function () {
return this.table.hasVerticalScroll();
setLeftHorizontalScroll: function (scrollLeft) { },
return this.table.setLeftHorizontalScroll(scrollLeft);
}, setVerticalScroll: function (scrollTop) {
return this.table.setVerticalScroll(scrollTop);
setRightHorizontalScroll: function (scrollLeft) { },
return this.table.setRightHorizontalScroll(scrollLeft);
}, setLeftHorizontalScroll: function (scrollLeft) {
return this.table.setLeftHorizontalScroll(scrollLeft);
getVerticalScroll: function () { },
return this.table.getVerticalScroll();
}, setRightHorizontalScroll: function (scrollLeft) {
return this.table.setRightHorizontalScroll(scrollLeft);
getLeftHorizontalScroll: function () { },
return this.table.getLeftHorizontalScroll();
}, getVerticalScroll: function () {
return this.table.getVerticalScroll();
getRightHorizontalScroll: function () { },
return this.table.getRightHorizontalScroll();
}, getLeftHorizontalScroll: function () {
return this.table.getLeftHorizontalScroll();
getColumns: function () { },
return this.table.getColumns();
}, getRightHorizontalScroll: function () {
return this.table.getRightHorizontalScroll();
populate: function (items, header) { },
this.table.populate(items, header);
this._adjustColumns(); getColumns: function () {
} return this.table.getColumns();
}); },
BI.PreviewTable.EVENT_CHANGE = "PreviewTable.EVENT_CHANGE";
populate: function (items, header) {
if (items) {
items = BI.map(items, function (i, items) {
return BI.map(items, function (j, item) {
return BI.extend({
type: "bi.preview_table_cell"
}, item);
});
});
}
if (header) {
header = BI.map(header, function (i, items) {
return BI.map(items, function (j, item) {
return BI.extend({
type: "bi.preview_table_header_cell"
}, item);
});
});
}
this.table.populate(items, header);
this._adjustColumns();
}
});
BI.PreviewTable.EVENT_CHANGE = "PreviewTable.EVENT_CHANGE";
BI.shortcut("bi.preview_table", BI.PreviewTable);/** BI.shortcut("bi.preview_table", BI.PreviewTable);/**
* 季度下拉框 * 季度下拉框
* *

1
src/base/formula/formulaeditor.js

@ -217,6 +217,7 @@ BI.FormulaEditor = BI.inherit(BI.Single, {
break; break;
} }
}); });
return value;
}); });
return v.replaceAll("(\\$\\{.*?\\})\\s", "$1"); return v.replaceAll("(\\$\\{.*?\\})\\s", "$1");
}, },

10
src/base/single/button/buttons/button.js

@ -42,19 +42,21 @@
BI.Button.superclass._init.apply(this, arguments); BI.Button.superclass._init.apply(this, arguments);
var o = this.options, self = this; var o = this.options, self = this;
if (BI.isNumber(o.height) && !o.clear && !o.block) { if (BI.isNumber(o.height) && !o.clear && !o.block) {
this.element.css({height: o.height + "px", lineHeight: o.height + "px"}); this.element.css({height: o.height + "px", lineHeight: (o.height - 2) + "px"});
} else { } else {
this.element.css({lineHeight: o.height + "px"}); this.element.css({lineHeight: (o.height - 2) + "px"});
} }
if (BI.isKey(o.iconCls)) { if (BI.isKey(o.iconCls)) {
this.icon = BI.createWidget({ this.icon = BI.createWidget({
type: "bi.icon", type: "bi.icon",
width: 18 width: 18,
height: o.height - 2
}); });
this.text = BI.createWidget({ this.text = BI.createWidget({
type: "bi.label", type: "bi.label",
text: o.text, text: o.text,
value: o.value value: o.value,
height: o.height - 2
}); });
BI.createWidget({ BI.createWidget({
type: "bi.horizontal_auto", type: "bi.horizontal_auto",

67
src/base/table/table.cell.js

@ -1,33 +1,36 @@
/** /**
* *
* 表格 * 表格
* *
* Created by GUY on 2015/9/22. * Created by GUY on 2015/9/22.
* @class BI.TableCell * @class BI.TableCell
* @extends BI.Single * @extends BI.Single
*/ */
BI.TableCell = BI.inherit(BI.Widget, { BI.TableCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.TableCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.TableCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-table-cell", baseCls: "bi-table-cell",
textAlign: "left", textAlign: "left",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.TableCell.superclass._init.apply(this, arguments); BI.TableCell.superclass._init.apply(this, arguments);
BI.createWidget({ var o = this.options;
type: "bi.label", BI.createWidget({
element: this, type: "bi.label",
whiteSpace: "nowrap", element: this,
textAlign: this.options.textAlign, whiteSpace: o.whiteSpace || "nowrap",
height: this.options.height, textAlign: this.options.textAlign,
text: this.options.text, height: this.options.height,
value: this.options.value, text: this.options.text,
lgap: 5 value: this.options.value,
}); lgap: o.lgap,
} rgap: o.rgap,
}); hgap: o.hgap || 5
});
}
});
BI.shortcut("bi.table_cell", BI.TableCell); BI.shortcut("bi.table_cell", BI.TableCell);

62
src/base/table/table.header.cell.js

@ -1,30 +1,34 @@
/** /**
* *
* 表格 * 表格
* *
* Created by GUY on 2015/9/22. * Created by GUY on 2015/9/22.
* @class BI.TableHeaderCell * @class BI.TableHeaderCell
* @extends BI.Single * @extends BI.Single
*/ */
BI.TableHeaderCell = BI.inherit(BI.Widget, { BI.TableHeaderCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.TableHeaderCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.TableHeaderCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-table-header-cell", baseCls: "bi-table-header-cell",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.TableHeaderCell.superclass._init.apply(this, arguments); BI.TableHeaderCell.superclass._init.apply(this, arguments);
BI.createWidget({ var o = this.options;
type: "bi.label", BI.createWidget({
element: this, type: "bi.label",
textAlign: "center", element: this,
height: this.options.height, textAlign: o.textAlign || "center",
text: this.options.text, height: this.options.height,
value: this.options.value text: this.options.text,
}); value: this.options.value,
} lgap: o.lgap,
}); rgap: o.rgap,
hgap: o.hgap || 5
});
}
});
BI.shortcut("bi.table_header_cell", BI.TableHeaderCell); BI.shortcut("bi.table_header_cell", BI.TableHeaderCell);

2
src/case/combo/searchtextvaluecombo/combo.searchtextvalue.js

@ -125,8 +125,10 @@ BI.SearchTextValueCombo = BI.inherit(BI.Widget, {
}); });
if (BI.isNull(result)) { if (BI.isNull(result)) {
this.element.removeClass("combo-error").addClass("combo-error"); this.element.removeClass("combo-error").addClass("combo-error");
this.trigger.attr("tipType", "warning");
} else { } else {
this.element.removeClass("combo-error"); this.element.removeClass("combo-error");
this.trigger.attr("tipType", "success");
} }
} }
}, },

65
src/widget/previewtable/previewtable.cell.js

@ -1,32 +1,35 @@
/** /**
* 预览表列 * 预览表列
* *
* Created by GUY on 2015/12/25. * Created by GUY on 2015/12/25.
* @class BI.PreviewTableCell * @class BI.PreviewTableCell
* @extends BI.Widget * @extends BI.Widget
*/ */
BI.PreviewTableCell = BI.inherit(BI.Widget, { BI.PreviewTableCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.PreviewTableCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.PreviewTableCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-preview-table-cell", baseCls: "bi-preview-table-cell",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.PreviewTableCell.superclass._init.apply(this, arguments); BI.PreviewTableCell.superclass._init.apply(this, arguments);
var self = this, o = this.options; var self = this, o = this.options;
BI.createWidget({ BI.createWidget({
type: "bi.label", type: "bi.label",
element: this, element: this,
textAlign: "left", textAlign: o.textAlign || "left",
whiteSpace: "normal", whiteSpace: o.whiteSpace || "normal",
height: this.options.height, height: this.options.height,
text: this.options.text, text: this.options.text,
value: this.options.value value: this.options.value,
}); lgap: o.lgap,
} rgap: o.rgap,
}); hgap: o.hgap || 5
});
}
});
BI.shortcut("bi.preview_table_cell", BI.PreviewTableCell); BI.shortcut("bi.preview_table_cell", BI.PreviewTableCell);

65
src/widget/previewtable/previewtable.header.cell.js

@ -1,32 +1,35 @@
/** /**
* 预览表 * 预览表
* *
* Created by GUY on 2015/12/25. * Created by GUY on 2015/12/25.
* @class BI.PreviewTableHeaderCell * @class BI.PreviewTableHeaderCell
* @extends BI.Widget * @extends BI.Widget
*/ */
BI.PreviewTableHeaderCell = BI.inherit(BI.Widget, { BI.PreviewTableHeaderCell = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.PreviewTableHeaderCell.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.PreviewTableHeaderCell.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-preview-table-header-cell", baseCls: "bi-preview-table-header-cell",
text: "" text: ""
}); });
}, },
_init: function () { _init: function () {
BI.PreviewTableHeaderCell.superclass._init.apply(this, arguments); BI.PreviewTableHeaderCell.superclass._init.apply(this, arguments);
var self = this, o = this.options; var self = this, o = this.options;
BI.createWidget({ BI.createWidget({
type: "bi.label", type: "bi.label",
element: this, element: this,
textAlign: "left", textAlign: o.textAlign || "left",
whiteSpace: "normal", whiteSpace: o.whiteSpace || "normal",
height: this.options.height, height: this.options.height,
text: this.options.text, text: this.options.text,
value: this.options.value value: this.options.value,
}); lgap: o.lgap,
} rgap: o.rgap,
}); hgap: o.hgap || 5
});
}
});
BI.shortcut("bi.preview_table_header_cell", BI.PreviewTableHeaderCell); BI.shortcut("bi.preview_table_header_cell", BI.PreviewTableHeaderCell);

426
src/widget/previewtable/previewtable.js

@ -1,205 +1,223 @@
/** /**
* 预览表 * 预览表
* *
* Created by GUY on 2015/12/25. * Created by GUY on 2015/12/25.
* @class BI.PreviewTable * @class BI.PreviewTable
* @extends BI.Widget * @extends BI.Widget
*/ */
BI.PreviewTable = BI.inherit(BI.Widget, { BI.PreviewTable = BI.inherit(BI.Widget, {
_defaultConfig: function () { _defaultConfig: function () {
return BI.extend(BI.PreviewTable.superclass._defaultConfig.apply(this, arguments), { return BI.extend(BI.PreviewTable.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-preview-table", baseCls: "bi-preview-table",
isNeedFreeze: false, isNeedFreeze: false,
freezeCols: [], freezeCols: [],
rowSize: null, rowSize: null,
columnSize: [], columnSize: [],
headerRowSize: 30, headerRowSize: 30,
header: [], header: [],
items: [] items: []
}); });
}, },
_init: function () { _init: function () {
BI.PreviewTable.superclass._init.apply(this, arguments); BI.PreviewTable.superclass._init.apply(this, arguments);
var self = this, o = this.options; var self = this, o = this.options;
this.table = BI.createWidget({ this.table = BI.createWidget({
type: "bi.table_view", type: "bi.table_view",
element: this, element: this,
isNeedResize: false, isNeedResize: false,
isResizeAdapt: false, isResizeAdapt: false,
isNeedFreeze: o.isNeedFreeze, isNeedFreeze: o.isNeedFreeze,
freezeCols: o.freezeCols, freezeCols: o.freezeCols,
rowSize: o.rowSize, rowSize: o.rowSize,
columnSize: o.columnSize, columnSize: o.columnSize,
headerRowSize: o.headerRowSize, headerRowSize: o.headerRowSize,
header: BI.map(o.header, function (i, items) { header: BI.map(o.header, function (i, items) {
return BI.map(items, function (j, item) { return BI.map(items, function (j, item) {
return BI.extend({ return BI.extend({
type: "bi.preview_table_header_cell" type: "bi.preview_table_header_cell"
}, item); }, item);
}); });
}), }),
items: BI.map(o.items, function (i, items) { items: BI.map(o.items, function (i, items) {
return BI.map(items, function (j, item) { return BI.map(items, function (j, item) {
return BI.extend({ return BI.extend({
type: "bi.preview_table_cell" type: "bi.preview_table_cell"
}, item); }, item);
}); });
}) })
}); });
this.table.on(BI.Table.EVENT_TABLE_AFTER_INIT, function () { this.table.on(BI.Table.EVENT_TABLE_AFTER_INIT, function () {
self.fireEvent(BI.Table.EVENT_TABLE_AFTER_INIT, arguments); self.fireEvent(BI.Table.EVENT_TABLE_AFTER_INIT, arguments);
}); });
this.table.on(BI.Table.EVENT_TABLE_RESIZE, function () { this.table.on(BI.Table.EVENT_TABLE_RESIZE, function () {
self._adjustColumns(); self._adjustColumns();
}); });
this._adjustColumns(); this._adjustColumns();
}, },
// 是否有自适应调节的列,即列宽为"" // 是否有自适应调节的列,即列宽为""
_hasAdaptCol: function (columnSize) { _hasAdaptCol: function (columnSize) {
return BI.any(columnSize, function (i, size) { return BI.any(columnSize, function (i, size) {
return size === ""; return size === "";
}); });
}, },
_isPercentage: function (columnSize) { _isPercentage: function (columnSize) {
return columnSize[0] <= 1; return columnSize[0] <= 1;
}, },
_adjustColumns: function () { _adjustColumns: function () {
var self = this, o = this.options; var self = this, o = this.options;
if (o.isNeedFreeze === true) { if (o.isNeedFreeze === true) {
// 如果存在百分比的情况 // 如果存在百分比的情况
if (this._isPercentage(o.columnSize)) { if (this._isPercentage(o.columnSize)) {
if (this._hasAdaptCol(o.columnSize)) { if (this._hasAdaptCol(o.columnSize)) {
var findCols = [], remain = 0; var findCols = [], remain = 0;
BI.each(o.columnSize, function (i, size) { BI.each(o.columnSize, function (i, size) {
if (size === "") { if (size === "") {
findCols.push(i); findCols.push(i);
} else { } else {
remain += size; remain += size;
} }
}); });
remain = 1 - remain; remain = 1 - remain;
var average = remain / findCols.length; var average = remain / findCols.length;
BI.each(findCols, function (i, col) { BI.each(findCols, function (i, col) {
o.columnSize[col] = average; o.columnSize[col] = average;
}); });
} }
var isRight = BI.first(o.freezeCols) !== 0; var isRight = BI.first(o.freezeCols) !== 0;
var freezeSize = [], notFreezeSize = []; var freezeSize = [], notFreezeSize = [];
BI.each(o.columnSize, function (i, size) { BI.each(o.columnSize, function (i, size) {
if (o.freezeCols.contains(i)) { if (o.freezeCols.contains(i)) {
freezeSize.push(size); freezeSize.push(size);
} else { } else {
notFreezeSize.push(size); notFreezeSize.push(size);
} }
}); });
var sumFreezeSize = BI.sum(freezeSize), sumNotFreezeSize = BI.sum(notFreezeSize); var sumFreezeSize = BI.sum(freezeSize), sumNotFreezeSize = BI.sum(notFreezeSize);
BI.each(freezeSize, function (i, size) { BI.each(freezeSize, function (i, size) {
freezeSize[i] = size / sumFreezeSize; freezeSize[i] = size / sumFreezeSize;
}); });
BI.each(notFreezeSize, function (i, size) { BI.each(notFreezeSize, function (i, size) {
notFreezeSize[i] = size / sumNotFreezeSize; notFreezeSize[i] = size / sumNotFreezeSize;
}); });
this.table.setRegionColumnSize(isRight ? ["fill", sumFreezeSize] : [sumFreezeSize, "fill"]); this.table.setRegionColumnSize(isRight ? ["fill", sumFreezeSize] : [sumFreezeSize, "fill"]);
this.table.setColumnSize(isRight ? (notFreezeSize.concat(freezeSize)) : (freezeSize.concat(notFreezeSize))); this.table.setColumnSize(isRight ? (notFreezeSize.concat(freezeSize)) : (freezeSize.concat(notFreezeSize)));
} }
} else { } else {
// 如果存在自适应宽度的列或者是百分比计算的列,需要将整个表宽设为100% // 如果存在自适应宽度的列或者是百分比计算的列,需要将整个表宽设为100%
if (this._hasAdaptCol(o.columnSize) || this._isPercentage(o.columnSize)) { if (this._hasAdaptCol(o.columnSize) || this._isPercentage(o.columnSize)) {
this.table.setRegionColumnSize(["100%"]); this.table.setRegionColumnSize(["100%"]);
} }
} }
}, },
setColumnSize: function (columnSize) { setColumnSize: function (columnSize) {
return this.table.setColumnSize(columnSize); return this.table.setColumnSize(columnSize);
}, },
getColumnSize: function () { getColumnSize: function () {
return this.table.getColumnSize(); return this.table.getColumnSize();
}, },
getCalculateColumnSize: function () { getCalculateColumnSize: function () {
return this.table.getCalculateColumnSize(); return this.table.getCalculateColumnSize();
}, },
setHeaderColumnSize: function (columnSize) { setHeaderColumnSize: function (columnSize) {
return this.table.setHeaderColumnSize(columnSize); return this.table.setHeaderColumnSize(columnSize);
}, },
setRegionColumnSize: function (columnSize) { setRegionColumnSize: function (columnSize) {
return this.table.setRegionColumnSize(columnSize); return this.table.setRegionColumnSize(columnSize);
}, },
getRegionColumnSize: function () { getRegionColumnSize: function () {
return this.table.getRegionColumnSize(); return this.table.getRegionColumnSize();
}, },
getCalculateRegionColumnSize: function () { getCalculateRegionColumnSize: function () {
return this.table.getCalculateRegionColumnSize(); return this.table.getCalculateRegionColumnSize();
}, },
getCalculateRegionRowSize: function () { getCalculateRegionRowSize: function () {
return this.table.getCalculateRegionRowSize(); return this.table.getCalculateRegionRowSize();
}, },
getClientRegionColumnSize: function () { getClientRegionColumnSize: function () {
return this.table.getClientRegionColumnSize(); return this.table.getClientRegionColumnSize();
}, },
getScrollRegionColumnSize: function () { getScrollRegionColumnSize: function () {
return this.table.getScrollRegionColumnSize(); return this.table.getScrollRegionColumnSize();
}, },
getScrollRegionRowSize: function () { getScrollRegionRowSize: function () {
return this.table.getScrollRegionRowSize(); return this.table.getScrollRegionRowSize();
}, },
hasVerticalScroll: function () { hasVerticalScroll: function () {
return this.table.hasVerticalScroll(); return this.table.hasVerticalScroll();
}, },
setVerticalScroll: function (scrollTop) { setVerticalScroll: function (scrollTop) {
return this.table.setVerticalScroll(scrollTop); return this.table.setVerticalScroll(scrollTop);
}, },
setLeftHorizontalScroll: function (scrollLeft) { setLeftHorizontalScroll: function (scrollLeft) {
return this.table.setLeftHorizontalScroll(scrollLeft); return this.table.setLeftHorizontalScroll(scrollLeft);
}, },
setRightHorizontalScroll: function (scrollLeft) { setRightHorizontalScroll: function (scrollLeft) {
return this.table.setRightHorizontalScroll(scrollLeft); return this.table.setRightHorizontalScroll(scrollLeft);
}, },
getVerticalScroll: function () { getVerticalScroll: function () {
return this.table.getVerticalScroll(); return this.table.getVerticalScroll();
}, },
getLeftHorizontalScroll: function () { getLeftHorizontalScroll: function () {
return this.table.getLeftHorizontalScroll(); return this.table.getLeftHorizontalScroll();
}, },
getRightHorizontalScroll: function () { getRightHorizontalScroll: function () {
return this.table.getRightHorizontalScroll(); return this.table.getRightHorizontalScroll();
}, },
getColumns: function () { getColumns: function () {
return this.table.getColumns(); return this.table.getColumns();
}, },
populate: function (items, header) { populate: function (items, header) {
this.table.populate(items, header); if (items) {
this._adjustColumns(); items = BI.map(items, function (i, items) {
} return BI.map(items, function (j, item) {
}); return BI.extend({
BI.PreviewTable.EVENT_CHANGE = "PreviewTable.EVENT_CHANGE"; type: "bi.preview_table_cell"
}, item);
});
});
}
if (header) {
header = BI.map(header, function (i, items) {
return BI.map(items, function (j, item) {
return BI.extend({
type: "bi.preview_table_header_cell"
}, item);
});
});
}
this.table.populate(items, header);
this._adjustColumns();
}
});
BI.PreviewTable.EVENT_CHANGE = "PreviewTable.EVENT_CHANGE";
BI.shortcut("bi.preview_table", BI.PreviewTable); BI.shortcut("bi.preview_table", BI.PreviewTable);
Loading…
Cancel
Save