AstronautOO7 6 years ago
parent
commit
a441cdf883
  1. 3
      Gruntfile.js
  2. 52
      changelog.md
  3. 590
      demo/js/base/demo.label.scene.js
  4. 2
      demo/js/case/combo/demo.bubble_combo.js
  5. 4
      demo/js/config/base.js
  6. 4
      demo/js/config/widget.js
  7. 6
      demo/js/face.js
  8. 47
      demo/js/widget/date/demo.multidate_combo.js
  9. 1
      demo/js/widget/multiselect/demo.multi_select_combo.js
  10. 48
      demo/js/widget/timecombo/demo.timecombo.js
  11. 550
      dist/2.0/fineui.css
  12. 3520
      dist/2.0/fineui.ie.js
  13. 75
      dist/2.0/fineui.ie.min.js
  14. 3520
      dist/2.0/fineui.js
  15. 2
      dist/2.0/fineui.min.css
  16. 75
      dist/2.0/fineui.min.js
  17. 224
      dist/base.css
  18. 1246
      dist/base.js
  19. 550
      dist/bundle.css
  20. 3520
      dist/bundle.ie.js
  21. 75
      dist/bundle.ie.min.js
  22. 3520
      dist/bundle.js
  23. 2
      dist/bundle.min.css
  24. 75
      dist/bundle.min.js
  25. 125
      dist/case.js
  26. 1
      dist/core.css
  27. 232
      dist/core.js
  28. 780
      dist/demo.js
  29. 550
      dist/fineui.css
  30. 3520
      dist/fineui.ie.js
  31. 75
      dist/fineui.ie.min.js
  32. 3520
      dist/fineui.js
  33. 2
      dist/fineui.min.css
  34. 75
      dist/fineui.min.js
  35. 2905
      dist/fineui_without_jquery_polyfill.js
  36. 6
      dist/fix/fix.ie.js
  37. 6
      dist/fix/fix.js
  38. BIN
      dist/font/iconfont.eot
  39. 33
      dist/font/iconfont.svg
  40. BIN
      dist/font/iconfont.ttf
  41. BIN
      dist/font/iconfont.woff
  42. BIN
      dist/font/iconfont.woff2
  43. 321
      dist/resource.css
  44. 44
      dist/utils.js
  45. 6
      dist/utils.min.js
  46. 4
      dist/widget.css
  47. 2785
      dist/widget.js
  48. 17
      src/base/combination/combo.js
  49. 2
      src/base/single/button/buttons/button.js
  50. 2
      src/base/single/button/buttons/button.text.js
  51. 11
      src/base/single/editor/editor.js
  52. 10
      src/base/single/editor/editor.textarea.js
  53. 4
      src/base/single/html/html.js
  54. 4
      src/base/single/input/checkbox/checkbox.js
  55. 9
      src/base/single/input/input.js
  56. 257
      src/base/single/label/html.label.js
  57. 270
      src/base/single/label/label.js
  58. 43
      src/base/single/text.js
  59. 2
      src/base/single/tip/tip.js
  60. 4
      src/base/single/tip/tip.tooltip.js
  61. 8
      src/base/tree/ztree/asynctree.js
  62. 4
      src/base/tree/ztree/jquery.ztree.excheck-3.5.js
  63. 123
      src/base/tree/ztree/list/listasynctree.js
  64. 92
      src/base/tree/ztree/list/listparttree.js
  65. 114
      src/base/tree/ztree/list/listtreeview.js
  66. 22
      src/base/tree/ztree/parttree.js
  67. 27
      src/base/tree/ztree/treeview.js
  68. 2
      src/case/calendar/calendar.year.js
  69. 2
      src/case/combo/searchtextvaluecombo/trigger.searchtextvalue.js
  70. 4
      src/case/editor/editor.clear.js
  71. 10
      src/case/editor/editor.shelter.js
  72. 10
      src/case/editor/editor.sign.js
  73. 9
      src/case/editor/editor.state.js
  74. 9
      src/case/editor/editor.state.simple.js
  75. 78
      src/case/tree/ztree/tree.list.display.js
  76. 2
      src/case/trigger/trigger.text.select.js
  77. 48
      src/component/treevaluechooser/abstract.treevaluechooser.js
  78. 261
      src/component/treevaluechooser/abstract.treevaluechooser.list.js
  79. 54
      src/component/treevaluechooser/combo.listtreevaluechooser.js
  80. 54
      src/component/treevaluechooser/combo.treevaluechooser.insert.js
  81. 36
      src/core/alias.js
  82. 4
      src/core/base.js
  83. 4
      src/core/func/date.js
  84. 22
      src/core/platform/web/ajax.js
  85. 8
      src/core/platform/web/config.js
  86. 32
      src/core/platform/web/dom.js
  87. 39
      src/core/wrapper/layout.js
  88. 144
      src/css/base/colorchooser/colorpicker/editor.css
  89. 2
      src/css/base/pane.css
  90. 0
      src/css/base/single/bar/bar.css
  91. 2
      src/css/base/single/button/item.css
  92. 0
      src/css/base/single/button/listitem.css
  93. 5
      src/css/base/single/editor/editor.css
  94. 26
      src/css/base/single/input/checkbox.css
  95. 30
      src/css/base/single/input/radio.css
  96. 0
      src/css/base/single/single.css
  97. 15
      src/css/base/tree/tree.css
  98. 1
      src/css/core/normalize2.css
  99. 136
      src/css/resource/background.css
  100. 5
      src/css/resource/font.css
  101. Some files were not shown because too many files have changed in this diff Show More

3
Gruntfile.js

@ -49,6 +49,9 @@ module.exports = function (grunt) {
"src/base/tree/ztree/treeview.js",
"src/base/tree/ztree/asynctree.js",
"src/base/tree/ztree/parttree.js",
"src/base/tree/ztree/list/listtreeview.js",
"src/base/tree/ztree/list/listasynctree.js",
"src/base/tree/ztree/list/listparttree.js",
"src/base/**/*.js"
],
dest: "dist/base.js"

52
changelog.md

@ -0,0 +1,52 @@
# 更新日志
2.0(2019-05)
- editor类控件新增EVENT_CHANGE_CONFIRM事件
- 复选下拉控件和树下拉控件支持trigger是否可编辑
- 时分秒控件支持自定义时间显示格式和是否可编辑
- 日期/时间/日期区间/时间区间支持自定义日期选择范围和是否可编辑
- 日期/时间/日期区间/时间区间支持自定义日期显示格式和是否可编辑
- 增加less函数: 字体资源添加函数addFontRe和字体激活函数activeFont
> @fontList: "dec", "report";
> .addFontRes("dec");
> .addFontRes("report");
> .activateFont(@fontList);
以上即可使用自定义的dec,report字体和fineui的资源字体
2.0(2019-04)
- 新增`bi.multi_tree_list_combo`控件, 此下拉树勾选节点时不会影响父子节点的勾选状态
- 新增`bi.multi_tree_insert_combo`控件, 此下拉树可以插入不存在的新值
- 新增`bi.list_tree_value_chooser_insert_combo`部件, 封装`bi.multi_tree_list_combo`数据处理逻辑
- 新增`bi.tree_value_chooser_insert_combo`部件, 封装`bi.multi_tree_insert_combo`数据处理逻辑
- 增加BI.DOM.ready方法
2.0(2019-03)
- 新增`bi.time_combo`时分秒控件和`bi.time_periods`时间选择区间,时间区间无有效值校验
- Label控件增加highlight参数, 可指定初始化标蓝
2.0(2019-01)
- 加载更多的单选下拉系列新增allowNoSelect参数配置, 使得可以不选任意一个值
2.0(2018-12)
- 增加Button的点击动画和Combo下拉时下拉图标动画
2.0(2018-11)
- 增加`bi.html`和`bi.html_label`类型,text支持html文本,不支持keyword
2.0(2018-10)
- popover增加高度自适应,即open的时候回根据内容高度调整popover的高度
2.0(2018-09)
- 增加Fix对configuable为false的对象的不内部构造响应式数据的性能优化处理,例如:
> this.model.json = Object.freeze({name: "zhang"});
只会对this.model.json进行响应式处理,不会对内部的name进行响应式处理
2.0(2018-08)
- 增加BI.mount方法,支持同构

590
demo/js/base/demo.label.scene.js

@ -0,0 +1,590 @@
/**
* 整理所有label场景
*/
Demo.LabelScene = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-label"
},
render: function () {
var items = [];
items.push(this.createExpander("1.1.1 文字居中,有宽度和高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg6",
text: "设置了textWidth,则一定是嵌套结构,因此需要用center_adapt布局容纳一下.为了实现不足一行时文字水平居中,超出一行时左对齐,需要设置maxWidth.",
whiteSpace: "normal",
height: 50,
width: 500,
textWidth: 200,
textAlign: "center"
}));
items.push(this.createExpander("1.1.2 居中,有宽度和高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg6",
text: "居中,有宽度高度,有文字宽度,whiteSpace为nowrap,maxWidth会限制文字",
whiteSpace: "nowrap",
height: 50,
width: 500,
textWidth: 350,
textAlign: "center"
}));
items.push((this.createExpander("1.2.1 居中,有宽度无高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg6",
text: "居中,有宽度无高度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
width: 500,
textWidth: 200,
textAlign: "center"
})));
items.push((this.createExpander("1.2.1 居中,有宽度无高度,有文字宽度,whiteSpace为normal,高度被父容器拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg6",
text: "此时虽然没有对label设置高度,但由于使用了center_adapt布局,依然会垂直方向居中",
whiteSpace: "normal",
width: 500,
textWidth: 200,
textAlign: "center"
},
top: 0,
left: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("1.2.2 居中,有宽度无高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg6",
text: "居中,有宽度无高度,有文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
width: 500,
textWidth: 350,
textAlign: "center"
})));
items.push((this.createExpander("1.3.1 居中,有宽度和高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,有宽度高度,无文字宽度,whiteSpace为normal,只需用center_adapt布局包一下即可.度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,whiteSpace为normal",
width: 500,
whiteSpace: "normal",
textAlign: "center",
height: 50
})));
items.push((this.createExpander("1.3.2 居中,有宽度无高度,无文字宽度,whiteSpace为normal", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg3",
text: "居中,有宽度无高度,无文字宽度,whiteSpace为normal,只需用center_adapt布局包一下即可.度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,whiteSpace为normal",
width: 500,
whiteSpace: "normal",
textAlign: "center"
},
top: 0,
left: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("1.4 居中,有宽度和高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,有宽度500有高度50,无文字宽度,whiteSpace为nowrap,此处无需两层div,设置text即可,然后设置line-height为传入高度即可实现垂直方向居中",
width: 500,
whiteSpace: "nowrap",
textAlign: "center",
height: 50
})));
items.push((this.createExpander("1.5.1 居中,有宽度无高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,有宽度500无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
width: 500,
whiteSpace: "nowrap",
textAlign: "center"
})));
items.push((this.createExpander("1.5.2 居中,有宽度无高度,无文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 50,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg3",
text: "居中,有宽度500无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
width: 500,
whiteSpace: "nowrap",
textAlign: "center"
},
top: 0,
left: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("1.6.1 居中,无宽度无高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度,有文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
textWidth: 500,
whiteSpace: "nowrap",
textAlign: "center"
})));
items.push((this.createExpander("1.6.2 居中,无宽度无高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
textWidth: 500,
whiteSpace: "normal",
textAlign: "center"
})));
items.push((this.createExpander("1.6.3 居中,无宽度无,有文字宽度,whiteSpace为normal,被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
textWidth: 500,
whiteSpace: "normal",
textAlign: "center"
},
left: 0,
right: 0,
top: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("1.7.1 居中,无宽度无高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "center"
})));
items.push((this.createExpander("1.7.2 居中,无宽度无高度,无文字宽度,whiteSpace为normal,被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "center"
},
left: 0,
right: 0,
top: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("1.7.3 居中,无宽度有高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度有高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
height: 50,
textAlign: "center"
})));
items.push((this.createExpander("1.8 居中,无宽度有高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度有高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
height: 50,
textAlign: "center"
})));
items.push((this.createExpander("1.9 居中,无宽度无高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "center"
})));
items.push((this.createExpander("1.9.1 居中,无宽度无高度,无文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 50,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "center"
},
top: 0,
left: 0,
right: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("2.1.1 居左,有宽度有高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度有高度,有文字宽度,whiteSpace为normal,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
textWidth: 300,
height: 50,
width: 500
})));
items.push((this.createExpander("2.1.2 居左,有宽度有高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度有高度,有文字宽度,whiteSpace为normal,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
textWidth: 300,
height: 50,
width: 500
})));
items.push((this.createExpander("2.2.1 居左,有宽度无高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度无高度,有文字宽度,whiteSpace为normal,不设置高度,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
textWidth: 300,
width: 500
})));
items.push((this.createExpander("2.2.2 居左,有宽度无高度,有文字宽度,whiteSpace为normal,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度无高度,有文字宽度,whiteSpace为normal,不设置高度,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
textWidth: 300,
width: 500
},
top: 0,
bottom: 0,
left: 0
}
]
})));
items.push((this.createExpander("2.2.3 居左,有宽度无高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度无高度,有文字宽度,whiteSpace为nowrap,不设置高度,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
textWidth: 300,
width: 500
})));
items.push((this.createExpander("2.2.4 居左,有宽度无高度,有文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度无高度,有文字宽度,whiteSpace为nowrap,不设置高度,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
textWidth: 300,
width: 500
},
top: 0,
bottom: 0,
left: 0
}
]
})));
items.push((this.createExpander("2.3.1 居左,有宽度有高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度有高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
height: 50,
vgap: 5,
width: 500
})));
items.push((this.createExpander("2.3.2 居左,有宽度有高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度有高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
height: 50,
width: 500
})));
items.push((this.createExpander("2.4.1 居左,有宽度无高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
width: 500
})));
items.push((this.createExpander("2.4.2 居左,有宽度无高度,无文字宽度,whiteSpace为normal,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg1",
text: "居左,有宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
width: 500
},
top: 0,
left: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("2.5.1 居左,无宽度无高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
textWidth: 300
})));
items.push((this.createExpander("2.5.2 居左,无宽度无高度,有文字宽度,whiteSpace为normal,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
textWidth: 300
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
items.push((this.createExpander("2.5.3 居左,无宽度无高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
textWidth: 300
})));
items.push((this.createExpander("2.5.4 居左,无宽度无高度,有文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
textWidth: 300
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
items.push((this.createExpander("2.6.1 居左,无宽度有高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度有高度,无文字宽度,whiteSpace为nowrap,注意这个是设置了vgap的,为了实现居中,lineHeight要做计算,才能准确的垂直居中",
whiteSpace: "nowrap",
textAlign: "left",
vgap: 10,
height: 50
})));
items.push((this.createExpander("2.6.2 居左,无宽度有高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度有高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
height: 50
})));
items.push((this.createExpander("2.7.1 居左,无宽度无高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left"
})));
items.push((this.createExpander("2.7.2 居左,无宽度无高度,无文字宽度,whiteSpace为normal,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left"
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
items.push((this.createExpander("2.7.3 居左,无宽度无高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left"
})));
items.push((this.createExpander("2.7.4 居左,无宽度无高度,无文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left"
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
items.push((this.createExpander("2.8 居左,无宽度无高度,无文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left"
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
items.push((this.createExpander("2.8.2 居左,无宽度无高度,无文字宽度,whiteSpace为normal,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left"
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
return {
type: "bi.vertical",
items: items,
hgap: 300,
vgap: 20
};
},
createExpander: function (text, popup) {
return {
type: "bi.vertical",
items: [
{
type: "bi.label",
cls: "demo-font-weight-bold",
textAlign: "left",
text: text,
height: 30
}, {
el: popup
}
]
};
}
});
BI.shortcut("demo.label_scene", Demo.LabelScene);

2
demo/js/case/combo/demo.bubble_combo.js

@ -100,7 +100,7 @@ Demo.Func = BI.inherit(BI.Widget, {
element: this,
items: [{
el: combo1,
left: 10,
left: 150,
top: 10
}, {
el: combo2,

4
demo/js/config/base.js

@ -6,6 +6,10 @@ Demo.BASE_CONFIG = [{
pId: 2,
text: "bi.label",
value: "demo.label"
},{
pId: 2,
text: "bi.label_scene",
value: "demo.label_scene"
}, {
pId: 2,
text: "bi.icon_label",

4
demo/js/config/widget.js

@ -170,6 +170,10 @@ Demo.WIDGET_CONFIG = [{
pId: 412,
text: "bi.date_time",
value: "demo.date_time"
}, {
pId: 412,
text: "bi.time_combo",
value: "demo.time_combo"
}, {
pId: 412,
text: "bi.time_interval",

6
demo/js/face.js

@ -79,7 +79,6 @@ Demo.Face = BI.inherit(BI.Widget, {
type: "bi.text_button",
cls: "bi-list-item-active",
text: "测试激活状态",
forceCenter: true
}
}]
};
@ -101,7 +100,6 @@ Demo.Face = BI.inherit(BI.Widget, {
type: "bi.text_button",
cls: "bi-list-item-active",
text: "测试选中状态",
forceCenter: true
}
}]
};
@ -144,7 +142,6 @@ Demo.Face = BI.inherit(BI.Widget, {
el: {
type: "bi.text_button",
text: "这个按钮是灰化的",
forceCenter: true,
disabled: true
}
}]
@ -181,7 +178,6 @@ Demo.Face = BI.inherit(BI.Widget, {
type: "bi.text_button",
cls: "bi-list-item-active",
text: "测试悬浮状态",
forceCenter: true
}
}]
};
@ -203,7 +199,6 @@ Demo.Face = BI.inherit(BI.Widget, {
type: "bi.text_button",
cls: "bi-list-item-active",
text: "测试激活状态",
forceCenter: true
}
}]
};
@ -225,7 +220,6 @@ Demo.Face = BI.inherit(BI.Widget, {
type: "bi.text_button",
cls: "bi-list-item-active",
text: "测试选中状态",
forceCenter: true
}
}]
};

47
demo/js/widget/date/demo.multidate_combo.js

@ -20,15 +20,25 @@ Demo.Date = BI.inherit(BI.Widget, {
ref: function () {
self.datecombo = this;
},
width: 300
// value: {
// type: 1,
// value: {
// year: 2018,
// month: 2,
// day: 23
// }
// }
width: 300,
// allowEdit: false,
// format: "%Y-%X-%d", // yyyy-MM-dd
// format: "%Y/%X/%d", // yyyy/MM/dd
// format: "%Y-%x-%e", // yyyy-M-d
// format: "%Y/%x/%e", // yyyy/M/d
// format: "%X/%d/%Y", // MM/dd/yyyy
// format: "%X/%e/%y", // MM/d/yy
// format: "%X.%d.%Y", // MM.dd.yyyy
// format: "%X.%e.%Y", // MM.d.yyyy
// format: "%X-%e-%y", // MM.d.yyyy
value: {
type: 1,
value: {
year: 2018,
month: 2,
day: 23
}
}
}, {
type: "bi.button",
text: "getValue",
@ -42,6 +52,25 @@ Demo.Date = BI.inherit(BI.Widget, {
self.datetimecombo = this;
},
width: 300,
// allowEdit: false,
// format: "%Y-%X-%d %H:%M:%S", // yyyy-MM-dd HH:mm:ss
// format: "%Y/%X/%d %H:%M:%S", // yyyy/MM/dd HH:mm:ss
// format: "%Y-%X-%d %I:%M:%S", // yyyy-MM-dd hh:mm:ss
// format: "%Y/%X/%d %I:%M:%S", // yyyy/MM/dd hh:mm:ss
// format: "%Y-%X-%d %H:%M:%S %p", // yyyy-MM-dd HH:mm:ss a
// format: "Y/%X/%d %H:%M:%S %p", // yyyy/MM/dd HH:mm:ss a
// format: "%Y-%X-%d %I:%M:%S %p", // yyyy-MM-dd hh:mm:ss a
// format: "%Y/%X/%d %I:%M:%S %p", // yyyy/MM/dd hh:mm:ss a
// format: "%X/%d/%Y %I:%M:%S", // MM/dd/yyyy hh:mm:ss
// format: "%X/%d/%Y %H:%M:%S", // MM/dd/yyyy HH:mm:ss
// format: "%X/%d/%Y %I:%M:%S", // MM/dd/yyyy hh:mm:ss a
// format: "%X/%d/%Y %H:%M:%S %p", // MM/dd/yyyy HH:mm:ss a
// format: "%X/%d/%Y %I:%M:%S %p", // MM/dd/yyyy hh:mm:ss a
// format: "%X/%d/%Y %H:%M:%S %p", // MM/dd/yyyy HH:mm:ss a
// format: "%X/%d/%Y %l:%M %p", // MM/dd/yyyy h:mm a
// format: "%X-%d-%Y %k:%M %p", // MM/dd/yyyy H:mm a
// format: "%Y-%x-%e %l:%M", // yyyy-M-d h:mm
// format: "%Y-%x-%e %k:%M", // yyyy-M-d H:mm
value: {
type: 1,
value: {

1
demo/js/widget/multiselect/demo.multi_select_combo.js

@ -10,6 +10,7 @@ Demo.MultiSelectCombo = BI.inherit(BI.Widget, {
var self = this;
var widget = BI.createWidget({
type: "bi.multi_select_insert_combo",
// allowEdit: false,
itemsCreator: BI.bind(this._itemsCreator, this),
width: 200,
value: {

48
demo/js/widget/timecombo/demo.timecombo.js

@ -0,0 +1,48 @@
/**
* Created by Dailer on 2017/7/13.
*/
Demo.TimeCombo = BI.inherit(BI.Widget, {
props: {
baseCls: ""
},
render: function () {
var self = this;
return {
type: "bi.horizontal_auto",
items: [{
type: "bi.time_combo",
ref: function (_ref) {
self.timeCombo = _ref;
},
// allowEdit: true,
// format: "%H:%M:%S", // HH:mm:ss
// format: "%I:%M:%S", // hh:mm:ss
// format: "%l:%M:%S", // h:mm:ss
// format: "%k:%M:%S", // H:mm:ss
// format: "%l:%M:%S %p", // h:mm:ss a
// format: "%l:%M", // h:mm
// format: "%k:%M", // H:mm
// format: "%I:%M", // hh:mm
// format: "%H:%M", // HH:mm
// format: "%M:%S", // mm:ss
value: {
hour: 12,
minute: 0,
second: 0
},
width: 300
}, {
type: "bi.button",
text: "getValue",
handler: function () {
BI.Msg.toast(JSON.stringify(self.timeCombo.getValue()));
},
width: 300
}],
vgap: 20
};
}
});
BI.shortcut("demo.time_combo", Demo.TimeCombo);

550
dist/2.0/fineui.css vendored

File diff suppressed because it is too large Load Diff

3520
dist/2.0/fineui.ie.js vendored

File diff suppressed because it is too large Load Diff

75
dist/2.0/fineui.ie.min.js vendored

File diff suppressed because one or more lines are too long

3520
dist/2.0/fineui.js vendored

File diff suppressed because it is too large Load Diff

2
dist/2.0/fineui.min.css vendored

File diff suppressed because one or more lines are too long

75
dist/2.0/fineui.min.js vendored

File diff suppressed because one or more lines are too long

224
dist/base.css vendored

@ -21,347 +21,215 @@
}
.bi-farbtastic .wheel {
background: url('images/1x/background/wheel.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/wheel.png');
_background: none;
}
.bi-farbtastic .overlay {
background: url('images/1x/background/mask.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/mask.png');
_background: none;
}
.bi-farbtastic .marker {
background: url('images/1x/background/marker.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/marker.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.center_open {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.roots_open {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.bottom_open {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.ztree li ul.line {
background: url('images/1x/icon/tree_vertical_line_1.png') repeat-y 1px 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_1.png');
_background: none;
}
.bi-theme-dark .ztree li ul.line {
background: url('images/1x/icon/dark/tree_vertical_line_1.png') repeat-y 1px 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_1.png');
_background: none;
}
.ztree li span.button.chk.checkbox_false_full {
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_full_focus {
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_part {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_part_focus {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_full {
background: url('images/2x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_active.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_full_focus {
background: url('images/2x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_active.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_part {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_part_focus {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_full {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_full_focus {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_part {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
}
.ztree.hack li span.button.chk.checkbox_false_part_focus {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_full {
background: url('images/1x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_active.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_full_focus {
background: url('images/1x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_active.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_part {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_part_focus {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree li span.button.root_open {
background: url('images/1x/icon/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_1.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.root_open {
background: url('images/1x/icon/dark/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_1.png');
_background: none;
}
.ztree li span.button.root_close {
background: url('images/1x/icon/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_1.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.root_close {
background: url('images/1x/icon/dark/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_1.png');
_background: none;
}
.ztree li span.button.roots_open {
background: url('images/1x/icon/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_open {
background: url('images/1x/icon/dark/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_2.png');
_background: none;
}
.ztree li span.button.roots_close {
background: url('images/1x/icon/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_close {
background: url('images/1x/icon/dark/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_2.png');
_background: none;
}
.ztree li span.button.center_open {
background: url('images/1x/icon/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_open {
background: url('images/1x/icon/dark/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_3.png');
_background: none;
}
.ztree li span.button.center_close {
background: url('images/1x/icon/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_close {
background: url('images/1x/icon/dark/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_3.png');
_background: none;
}
.ztree li span.button.bottom_open {
background: url('images/1x/icon/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_open {
background: url('images/1x/icon/dark/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_4.png');
_background: none;
}
.ztree li span.button.bottom_close {
background: url('images/1x/icon/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_close {
background: url('images/1x/icon/dark/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_4.png');
_background: none;
}
.ztree li span.button.roots_docu {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_docu {
background: url('images/1x/icon/dark/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_2.png');
_background: none;
}
.ztree li span.button.center_docu {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_docu {
background: url('images/1x/icon/dark/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_3.png');
_background: none;
}
.ztree li span.button.bottom_docu {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_docu {
background: url('images/1x/icon/dark/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_4.png');
_background: none;
}
.ztree li span.button.ico_loading {
background: url('images/1x/icon/loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/loading.gif');
_background: none;
}
.base-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_1.png') repeat-y 0 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_1.png');
_background: none;
}
.bi-theme-dark .base-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_1.png') repeat-y 0 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_1.png');
_background: none;
}
.first-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-theme-dark .first-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_2.png');
_background: none;
}
.mid-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-theme-dark .mid-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_3.png');
_background: none;
}
.last-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.bi-theme-dark .last-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_4.png');
_background: none;
}
.loading-background {
background: url('images/2x/icon/loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/loading.gif');
background-size: contain;
_background: none;
}
.auto-color-background {
background: url('images/2x/background/auto_color.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color.png');
background-size: contain;
_background: none;
}
.auto-color-normal-background {
background: url('images/2x/background/auto_color_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal.png');
background-size: contain;
_background: none;
}
.auto-color-normal-disabled-background {
background: url('images/2x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal_disable.png');
background-size: contain;
_background: none;
}
.trans-color-background {
background: url('images/2x/background/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_normal.png');
background-size: contain;
_background: none;
}
.trans-color-disabled-background {
background: url('images/2x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_disable.png');
background-size: contain;
_background: none;
}
.auto-color-background.hack {
background: url('images/1x/background/auto_color.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color.png');
_background: none;
}
.auto-color-normal-background.hack {
background: url('images/1x/background/auto_color_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal.png');
_background: none;
}
.auto-color-normal-disabled-background.hack {
background: url('images/1x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal_disable.png');
_background: none;
}
.trans-color-background.hack {
background: url('images/1x/background/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_normal.png');
_background: none;
}
.trans-color-disabled-background.hack {
background: url('images/1x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_disable.png');
_background: none;
}
.bi-color-picker-editor .color-picker-editor-display {
-webkit-border-radius: 2px;
@ -370,25 +238,17 @@
}
.bi-color-picker-editor.disabled .auto-color-normal-background {
background: url('images/2x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal_disable.png');
background-size: contain;
_background: none;
}
.bi-color-picker-editor.disabled .auto-color-normal-background.hack {
background: url('images/1x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal_disable.png');
_background: none;
}
.bi-color-picker-editor.disabled .trans-color-background {
background: url('images/2x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_disable.png');
background-size: contain;
_background: none;
}
.bi-color-picker-editor.disabled .trans-color-background.hack {
background: url('images/1x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_disable.png');
_background: none;
}
.bi-farbtastic * {
cursor: crosshair;
@ -796,8 +656,6 @@
}
.bi-loading-widget.hack {
background: url('images/1x/icon/wave_loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/wave_loading.gif');
_background: none;
}
.bi-loading-widget.hack .animate-rect {
background-color: rgba(54, 133, 242, 0);
@ -1317,12 +1175,10 @@ body .bi-button.button-ignore.disabled.ghost .b-font:before,
.bi-theme-dark #body .bi-button.button-common.disabled.ghost .b-font:before {
color: #ffffff !important;
}
.bi-single-select-icon-text-item:active .b-font:before,
.bi-single-select-icon-text-item.active .b-font:before {
color: #3685f2;
}
.bi-switch {
-webkit-border-radius: 40px 40px 40px 40px;
-moz-border-radius: 40px 40px 40px 40px;
@ -1357,7 +1213,6 @@ body .bi-button.button-ignore.disabled.ghost .b-font:before,
.bi-theme-dark .bi-switch.disabled:active {
background-color: #2F3149;
}
.bi-multifile-editor .multifile-editor {
text-align: right;
cursor: pointer;
@ -1365,10 +1220,6 @@ body .bi-button.button-ignore.disabled.ghost .b-font:before,
z-index: 2;
}
.bi-textarea-editor {
overflow: hidden;
overflow-x: hidden;
@ -1407,6 +1258,10 @@ body .bi-button.button-ignore.disabled.ghost .b-font:before,
transform: rotate(45deg) scale(1) translate(-50%, -50%);
content: '';
}
.bi-checkbox .checkbox-content.hover,
.bi-checkbox .checkbox-content:hover {
border-color: #3685f2;
}
.bi-checkbox.active .checkbox-content,
.bi-checkbox:active .checkbox-content {
border-color: #3685f2;
@ -1416,18 +1271,36 @@ body .bi-button.button-ignore.disabled.ghost .b-font:before,
border-color: #ffffff;
opacity: 1;
}
.bi-checkbox.disabled .checkbox-content {
background-color: #F2F4F7;
border-color: #d0d4da;
}
.bi-checkbox.disabled .checkbox-content:after {
opacity: 0;
}
.bi-checkbox.disabled.active .checkbox-content {
border-color: #e8eaed;
background-color: #d0d4da;
}
.bi-checkbox.disabled.active .checkbox-content:after {
opacity: 1;
}
.bi-theme-dark .bi-checkbox .checkbox-content {
border-color: #9EA6B2;
border-color: #878D9F;
}
.bi-theme-dark .bi-checkbox .checkbox-content.hover,
.bi-theme-dark .bi-checkbox .checkbox-content:hover {
border-color: #3685f2;
}
.bi-theme-dark .bi-checkbox.active .checkbox-content,
.bi-theme-dark .bi-checkbox:active .checkbox-content {
border-color: #3685f2;
}
.bi-theme-dark .bi-checkbox.disabled .checkbox-content {
background-color: #2F3149;
}
.bi-theme-dark .bi-checkbox.disabled.active .checkbox-content {
background-color: #606479;
border-color: #606479;
}
.bi-file {
opacity: 0;
@ -1462,6 +1335,10 @@ body .bi-button.button-ignore.disabled.ghost .b-font:before,
.bi-radio .radio-content:after {
content: "";
}
.bi-radio .radio-content.hover,
.bi-radio .radio-content:hover {
border-color: #3685f2;
}
.bi-radio:active .radio-content,
.bi-radio.active .radio-content {
border-color: #3685f2;
@ -1484,18 +1361,40 @@ body .bi-button.button-ignore.disabled.ghost .b-font:before,
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
.bi-radio.disabled .radio-content {
background-color: #F2F4F7;
border-color: #d0d4da;
}
.bi-radio.disabled .radio-content:after {
background-color: transparent;
}
.bi-radio.disabled.active .radio-content {
border-color: #e8eaed;
background-color: #d0d4da;
}
.bi-radio.disabled.active .radio-content:after {
background-color: #ffffff;
}
.bi-theme-dark .bi-radio .radio-content {
border-color: #9EA6B2;
border-color: #878D9F;
}
.bi-theme-dark .bi-radio .radio-content.hover,
.bi-theme-dark .bi-radio .radio-content:hover {
border-color: #3685f2;
}
.bi-theme-dark .bi-radio.active .radio-content,
.bi-theme-dark .bi-radio:active .radio-content {
border-color: #3685f2;
}
.bi-theme-dark .bi-radio.disabled .radio-content {
background-color: #2F3149;
}
.bi-theme-dark .bi-radio.disabled .radio-content.hover,
.bi-theme-dark .bi-radio.disabled .radio-content:hover {
border-color: #878D9F;
}
.bi-theme-dark .bi-radio.disabled.active .radio-content {
background-color: #606479;
border-color: #606479;
}
.bi-label {
overflow: hidden;
@ -1607,6 +1506,21 @@ body .bi-button.button-ignore.disabled.ghost .b-font:before,
opacity: 1;
filter: alpha(opacity=100);
}
.bi-list-display-tree .ztree li a,
.bi-list-display-tree .ztree li span {
cursor: default !important;
}
.bi-list-display-tree .ztree li a:hover {
text-decoration: none;
}
.bi-list-display-tree .ztree li a.curSelectedNode {
padding-top: 1px;
border: none;
background-color: inherit;
opacity: 1;
filter: alpha(opacity=100);
}
.ztree * {
padding: 0;
margin: 0;

1246
dist/base.js vendored

File diff suppressed because it is too large Load Diff

550
dist/bundle.css vendored

File diff suppressed because it is too large Load Diff

3520
dist/bundle.ie.js vendored

File diff suppressed because it is too large Load Diff

75
dist/bundle.ie.min.js vendored

File diff suppressed because one or more lines are too long

3520
dist/bundle.js vendored

File diff suppressed because it is too large Load Diff

2
dist/bundle.min.css vendored

File diff suppressed because one or more lines are too long

75
dist/bundle.min.js vendored

File diff suppressed because one or more lines are too long

125
dist/case.js vendored

@ -1948,7 +1948,7 @@ BI.YearCalendar = BI.inherit(BI.Widget, {
return BI.map(item, function (j, td) {
return BI.extend(td, {
type: "bi.text_item",
cls: "bi-list-item-active",
cls: "bi-list-item-select",
textAlign: "center",
whiteSpace: "normal",
once: false,
@ -4914,7 +4914,7 @@ BI.SearchTextValueTrigger = BI.inherit(BI.Trigger, {
if (result.length > 0) {
return result.join(",");
} else {
return o.text;
return BI.isFunction(o.text) ? o.text() : o.text;
}
},
@ -5634,6 +5634,9 @@ BI.ClearEditor = BI.inherit(BI.Widget, {
this.editor.on(BI.Editor.EVENT_CONFIRM, function () {
self.fireEvent(BI.ClearEditor.EVENT_CONFIRM);
});
this.editor.on(BI.Editor.EVENT_CHANGE_CONFIRM, function () {
self.fireEvent(BI.ClearEditor.EVENT_CHANGE_CONFIRM);
});
this.editor.on(BI.Editor.EVENT_START, function () {
self.fireEvent(BI.ClearEditor.EVENT_START);
});
@ -5698,6 +5701,7 @@ BI.ClearEditor.EVENT_START = "EVENT_START";
BI.ClearEditor.EVENT_PAUSE = "EVENT_PAUSE";
BI.ClearEditor.EVENT_STOP = "EVENT_STOP";
BI.ClearEditor.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.ClearEditor.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.ClearEditor.EVENT_VALID = "EVENT_VALID";
BI.ClearEditor.EVENT_ERROR = "EVENT_ERROR";
BI.ClearEditor.EVENT_ENTER = "EVENT_ENTER";
@ -5805,6 +5809,11 @@ BI.ShelterEditor = BI.inherit(BI.Widget, {
self._checkText();
self.fireEvent(BI.ShelterEditor.EVENT_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_CHANGE_CONFIRM, function () {
self._showHint();
self._checkText();
self.fireEvent(BI.ShelterEditor.EVENT_CHANGE_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_START, function () {
self.fireEvent(BI.ShelterEditor.EVENT_START, arguments);
});
@ -5923,6 +5932,10 @@ BI.ShelterEditor = BI.inherit(BI.Widget, {
return this.editor.getLastValidValue();
},
getLastChangedValue: function () {
return this.editor.getLastChangedValue();
},
setTextStyle: function (style) {
this.text.setStyle(style);
},
@ -5957,6 +5970,7 @@ BI.ShelterEditor.EVENT_START = "EVENT_START";
BI.ShelterEditor.EVENT_PAUSE = "EVENT_PAUSE";
BI.ShelterEditor.EVENT_STOP = "EVENT_STOP";
BI.ShelterEditor.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.ShelterEditor.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.ShelterEditor.EVENT_VALID = "EVENT_VALID";
BI.ShelterEditor.EVENT_ERROR = "EVENT_ERROR";
BI.ShelterEditor.EVENT_ENTER = "EVENT_ENTER";
@ -6068,6 +6082,11 @@ BI.SignEditor = BI.inherit(BI.Widget, {
self._checkText();
self.fireEvent(BI.SignEditor.EVENT_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_CHANGE_CONFIRM, function () {
self._showHint();
self._checkText();
self.fireEvent(BI.SignEditor.EVENT_CHANGE_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_START, function () {
self.fireEvent(BI.SignEditor.EVENT_START, arguments);
});
@ -6188,6 +6207,10 @@ BI.SignEditor = BI.inherit(BI.Widget, {
return this.editor.getLastValidValue();
},
getLastChangedValue: function () {
return this.editor.getLastChangedValue();
},
setValue: function (k) {
this.editor.setValue(k);
this._checkText();
@ -6217,6 +6240,7 @@ BI.SignEditor.EVENT_START = "EVENT_START";
BI.SignEditor.EVENT_PAUSE = "EVENT_PAUSE";
BI.SignEditor.EVENT_STOP = "EVENT_STOP";
BI.SignEditor.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.SignEditor.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.SignEditor.EVENT_VALID = "EVENT_VALID";
BI.SignEditor.EVENT_ERROR = "EVENT_ERROR";
BI.SignEditor.EVENT_ENTER = "EVENT_ENTER";
@ -6337,6 +6361,10 @@ BI.StateEditor = BI.inherit(BI.Widget, {
self._showHint();
self.fireEvent(BI.StateEditor.EVENT_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_CHANGE_CONFIRM, function () {
self._showHint();
self.fireEvent(BI.StateEditor.EVENT_CHANGE_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_START, function () {
self.fireEvent(BI.StateEditor.EVENT_START, arguments);
});
@ -6437,6 +6465,10 @@ BI.StateEditor = BI.inherit(BI.Widget, {
return this.editor.getLastValidValue();
},
getLastChangedValue: function () {
return this.editor.getLastChangedValue();
},
setValue: function (k) {
this.editor.setValue(k);
},
@ -6500,6 +6532,7 @@ BI.StateEditor.EVENT_START = "EVENT_START";
BI.StateEditor.EVENT_PAUSE = "EVENT_PAUSE";
BI.StateEditor.EVENT_STOP = "EVENT_STOP";
BI.StateEditor.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.StateEditor.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.StateEditor.EVENT_VALID = "EVENT_VALID";
BI.StateEditor.EVENT_ERROR = "EVENT_ERROR";
BI.StateEditor.EVENT_ENTER = "EVENT_ENTER";
@ -6609,6 +6642,10 @@ BI.SimpleStateEditor = BI.inherit(BI.Widget, {
self._showHint();
self.fireEvent(BI.SimpleStateEditor.EVENT_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_CHANGE_CONFIRM, function () {
self._showHint();
self.fireEvent(BI.SimpleStateEditor.EVENT_CHANGE_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_START, function () {
self.fireEvent(BI.SimpleStateEditor.EVENT_START, arguments);
});
@ -6707,6 +6744,10 @@ BI.SimpleStateEditor = BI.inherit(BI.Widget, {
return this.editor.getLastValidValue();
},
getLastChangedValue: function () {
return this.editor.getLastChangedValue();
},
setValue: function (k) {
this.editor.setValue(k);
},
@ -6758,6 +6799,7 @@ BI.SimpleStateEditor.EVENT_START = "EVENT_START";
BI.SimpleStateEditor.EVENT_PAUSE = "EVENT_PAUSE";
BI.SimpleStateEditor.EVENT_STOP = "EVENT_STOP";
BI.SimpleStateEditor.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.SimpleStateEditor.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.SimpleStateEditor.EVENT_VALID = "EVENT_VALID";
BI.SimpleStateEditor.EVENT_ERROR = "EVENT_ERROR";
BI.SimpleStateEditor.EVENT_ENTER = "EVENT_ENTER";
@ -9155,6 +9197,83 @@ BI.DisplayTree = BI.inherit(BI.TreeView, {
BI.DisplayTree.EVENT_CHANGE = "EVENT_CHANGE";
BI.shortcut("bi.display_tree", BI.DisplayTree);/**
* guy
* 异步树
* @class BI.ListListDisplayTree
* @extends BI.TreeView
*/
BI.ListDisplayTree = BI.inherit(BI.ListTreeView, {
_defaultConfig: function () {
return BI.extend(BI.ListDisplayTree.superclass._defaultConfig.apply(this, arguments), {
extraCls: "bi-list-display-tree"
});
},
_init: function () {
BI.ListDisplayTree.superclass._init.apply(this, arguments);
},
// 配置属性
_configSetting: function () {
var setting = {
view: {
selectedMulti: false,
dblClickExpand: false,
showIcon: false,
nameIsHTML: true,
showTitle: false,
fontCss: getFont
},
data: {
key: {
title: "title",
name: "text"
},
simpleData: {
enable: true
}
},
callback: {
beforeCollapse: beforeCollapse
}
};
function beforeCollapse(treeId, treeNode) {
return false;
}
function getFont(treeId, node) {
return node.isLeaf ? {} : {color: "#999999"};
}
return setting;
},
_dealWidthNodes: function (nodes) {
nodes = BI.ListDisplayTree.superclass._dealWidthNodes.apply(this, arguments);
var self = this, o = this.options;
BI.each(nodes, function (i, node) {
node.isParent = node.isParent || node.parent;
if (node.text == null) {
if (node.count > 0) {
node.text = node.value + "(" + BI.i18nText("BI-Basic_Altogether") + node.count + BI.i18nText("BI-Basic_Count") + ")";
}
}
});
return nodes;
},
initTree: function (nodes, setting) {
var setting = setting || this._configSetting();
this.nodes = $.fn.zTree.init(this.tree.element, setting, nodes);
},
destroy: function () {
BI.ListDisplayTree.superclass.destroy.apply(this, arguments);
}
});
BI.ListDisplayTree.EVENT_CHANGE = "EVENT_CHANGE";
BI.shortcut("bi.list_display_tree", BI.ListDisplayTree);/**
* 简单的多选树
*
* Created by GUY on 2016/2/16.
@ -9664,7 +9783,7 @@ BI.SelectTextTrigger = BI.inherit(BI.Trigger, {
if (result.length > 0) {
return result.join(",");
} else {
return o.text;
return BI.isFunction(o.text) ? o.text() : o.text;
}
},

1
dist/core.css vendored

@ -276,7 +276,6 @@ li {
}
i {
-webkit-font-smoothing: antialiased;
-webkit-text-stroke-width: 0.2px;
-moz-osx-font-smoothing: grayscale;
}
input,

232
dist/core.js vendored

@ -10235,8 +10235,8 @@ if (!_global.BI) {
},
createItems: function (data, innerAttr, outerAttr) {
innerAttr = BI.isArray(innerAttr) ? innerAttr : BI.makeArray(BI.flatten(data).length, innerAttr);
outerAttr = BI.isArray(outerAttr) ? outerAttr : BI.makeArray(BI.flatten(data).length, outerAttr);
innerAttr = BI.isArray(innerAttr) ? innerAttr : BI.makeArray(BI.flatten(data).length, innerAttr || {});
outerAttr = BI.isArray(outerAttr) ? outerAttr : BI.makeArray(BI.flatten(data).length, outerAttr || {});
return BI.map(data, function (i, item) {
if (BI.isArray(item)) {
return BI.createItems(item, innerAttr, outerAttr);
@ -15177,9 +15177,22 @@ BI.Layout = BI.inherit(BI.Widget, {
oldEndVnode = oldCh[--oldEndIdx];
newStartVnode = newCh[++newStartIdx];
} else {
var node = addNode(newStartVnode);
insertBefore(node, oldStartVnode);
newStartVnode = newCh[++newStartIdx];
var sameOldVnode = findOldVnode(oldCh, newStartVnode, oldStartIdx, oldEndIdx);
if (BI.isNull(sameOldVnode)) { // 不存在就把新的放到左边
var node = addNode(newStartVnode);
insertBefore(node, oldStartVnode);
newStartVnode = newCh[++newStartIdx];
} else { // 如果新节点在就旧节点区间中存在就复用一下
BI.each(oldCh, function (index, child) {
if (child && sameVnode(child, newStartVnode)) {
updated = self.patchItem(sameOldVnode, newStartVnode, index) || updated;
children[sameOldVnode.key == null ? self._getChildName(index) : sameOldVnode.key] = self._children[self._getChildName(index)];
oldCh[index] = undefined;
insertBefore(sameOldVnode, oldStartVnode);
}
});
newStartVnode = newCh[++newStartIdx];
}
}
}
if (oldStartIdx > oldEndIdx) {
@ -15223,9 +15236,13 @@ BI.Layout = BI.inherit(BI.Widget, {
function removeVnodes (vnodes, startIdx, endIdx) {
for (; startIdx <= endIdx; ++startIdx) {
var node = self._getOptions(vnodes[startIdx]);
var key = node.key == null ? self._getChildName(startIdx) : node.key;
children[key]._destroy();
var ch = vnodes[startIdx];
if (BI.isNotNull(ch)) {
var node = self._getOptions(ch);
var key = node.key == null ? self._getChildName(startIdx) : node.key;
delete self._children[self._getChildName(key)];
children[key]._destroy();
}
}
}
@ -15251,6 +15268,16 @@ BI.Layout = BI.inherit(BI.Widget, {
}
}
function findOldVnode (vnodes, vNode, beginIdx, endIdx) {
var i, found;
for (i = beginIdx; i <= endIdx; ++i) {
if (vnodes[i] && sameVnode(vnodes[i], vNode)) {
found = vnodes[i];
}
}
return found;
}
return updated;
},
@ -15834,6 +15861,7 @@ BI.ShowAction = BI.inherit(BI.Action, {
return left;
}
BI.cjkEncode = function (text) {
// alex:如果非字符串,返回其本身(cjkEncode(234) 返回 ""是不对的)
if (typeof text !== "string") {
@ -15892,21 +15920,16 @@ BI.ShowAction = BI.inherit(BI.Action, {
};
// replace the html special tags
var SPECIAL_TAGS = {
"&": "&amp;",
"\"": "&quot;",
"<": "&lt;",
">": "&gt;",
" ": "&nbsp;"
};
BI.htmlEncode = function (text) {
return BI.isNull(text) ? "" : BI.replaceAll(text + "", "&|\"|<|>|\\s", function (v) {
switch (v) {
case "&":
return "&amp;";
case "\"":
return "&quot;";
case "<":
return "&lt;";
case ">":
return "&gt;";
case " ":
default:
return "&nbsp;";
}
return SPECIAL_TAGS[v] ? SPECIAL_TAGS[v] : "&nbsp;";
});
};
// html decode
@ -16094,6 +16117,20 @@ BI.ShowAction = BI.inherit(BI.Action, {
})(jo);
};
/**
* 获取编码后的url
* @param urlTemplate url模板
* @param param 参数
* @returns {*|String}
* @example
* BI.getEncodeURL("design/{tableName}/{fieldName}",{tableName: "A", fieldName: "a"}) // design/A/a
*/
BI.getEncodeURL = function (urlTemplate, param) {
return urlTemplate.replaceAll("\\{(.*?)\\}", function (ori, str) {
return BI.encodeURIComponent(BI.isObject(param) ? param[str] : param);
});
};
BI.encodeURIComponent = function (url) {
BI.specialCharsMap = BI.specialCharsMap || {};
url = url || "";
@ -18017,8 +18054,8 @@ _.extend(BI, {
s["%H"] = (hr < 10) ? ("0" + hr) : hr; // hour, range 00 to 23 (24h format)
s["%I"] = (ir < 10) ? ("0" + ir) : ir; // hour, range 01 to 12 (12h format)
s["%j"] = (dy < 100) ? ((dy < 10) ? ("00" + dy) : ("0" + dy)) : dy; // day of the year (range 001 to 366)
s["%k"] = hr; // hour, range 0 to 23 (24h format)
s["%l"] = ir; // hour, range 1 to 12 (12h format)
s["%k"] = hr + ""; // hour, range 0 to 23 (24h format)
s["%l"] = ir + ""; // hour, range 1 to 12 (12h format)
s["%X"] = (m < 9) ? ("0" + (1 + m)) : (1 + m); // month, range 01 to 12
s["%x"] = m + 1; // month, range 1 to 12
s["%M"] = (min < 10) ? ("0" + min) : min; // minute, range 00 to 59
@ -19107,27 +19144,6 @@ BI.HorizontalFillLayoutLogic = BI.inherit(BI.Logic, {
_init: function () {
BI.HorizontalFillLayoutLogic.superclass._init.apply(this, arguments);
}
});// BI请求
_.extend(BI, {
ajax: function (option) {
option || (option = {});
var async = option.async;
option.data = BI.cjkEncodeDO(option.data || {});
$.ajax({
url: option.url,
type: "POST",
data: option.data,
async: async,
error: option.error,
complete: function (res, status) {
if (BI.isFunction(option.complete)) {
option.complete(BI.jsonDecode(res.responseText), status);
}
}
});
}
});// 工程配置
BI.prepares.push(function () {
// 注册布局
@ -19136,12 +19152,12 @@ BI.prepares.push(function () {
// 2、IE或者不支持flex的浏览器下使用inline布局
// 3、在2的情况下如果布局的items大于1的话使用display:table的布局
// 4、在3的情况下如果IE版本低于8使用table标签布局
var _isSupprtFlex;
var _isSupportFlex;
var isSupportFlex = function () {
if (_isSupprtFlex == null) {
_isSupprtFlex = !!(BI.isSupportCss3 && BI.isSupportCss3("flex"));
if (_isSupportFlex == null) {
_isSupportFlex = !!(BI.isSupportCss3 && BI.isSupportCss3("flex"));
}
return _isSupprtFlex;
return _isSupportFlex;
};
BI.Plugin.registerWidget("bi.horizontal", function (ob) {
var isIE = BI.isIE(), supportFlex = isSupportFlex(), isLessIE8 = isIE && BI.getIEVersion() < 8;
@ -19451,7 +19467,7 @@ BI.prepares.push(function () {
BI.extend(BI.DOM, {
patchProps: function (fromElement, toElement) {
var elemData = BI.Widget._renderEngine._data(fromElement[0]);
var elemData = jQuery._data(fromElement[0]);
var events = elemData.events;
BI.each(events, function (eventKey, event) {
BI.each(event, function (i, handler) {
@ -19459,7 +19475,7 @@ BI.prepares.push(function () {
});
});
var fromChildren = fromElement.children(), toChildren = toElement.children();
if(fromChildren.length !== toChildren.length) {
if (fromChildren.length !== toChildren.length) {
throw new Error("不匹配");
}
BI.each(fromChildren, function (i, child) {
@ -19713,14 +19729,14 @@ BI.prepares.push(function () {
return tempValue;
},
rgba2rgb: function (rgbColour, BGcolor) {
if (BI.isNull(BGcolor)) {
BGcolor = 1;
rgba2rgb: function (rgbColor, bgColor) {
if (BI.isNull(bgColor)) {
bgColor = 1;
}
if (rgbColour.substr(0, 4) != "rgba") {
if (rgbColor.substr(0, 4) != "rgba") {
return "";
}
var rgbValues = rgbColour.match(/\d+(\.\d+)?/g);
var rgbValues = rgbColor.match(/\d+(\.\d+)?/g);
if (rgbValues.length < 4) {
return "";
}
@ -19729,9 +19745,9 @@ BI.prepares.push(function () {
var B = BI.parseFloat(rgbValues[2]);
var A = BI.parseFloat(rgbValues[3]);
return "rgb(" + Math.floor(255 * (BGcolor * (1 - A )) + R * A) + "," +
Math.floor(255 * (BGcolor * (1 - A )) + G * A) + "," +
Math.floor(255 * (BGcolor * (1 - A )) + B * A) + ")";
return "rgb(" + Math.floor(255 * (bgColor * (1 - A)) + R * A) + "," +
Math.floor(255 * (bgColor * (1 - A)) + G * A) + "," +
Math.floor(255 * (bgColor * (1 - A)) + B * A) + ")";
}
});
@ -19743,6 +19759,12 @@ BI.prepares.push(function () {
};
},
getInnerLeftPosition: function (combo, popup, extraWidth) {
return {
left: combo.element.offset().left + (extraWidth || 0)
};
},
getRightPosition: function (combo, popup, extraWidth) {
var el = combo.element;
return {
@ -19750,6 +19772,13 @@ BI.prepares.push(function () {
};
},
getInnerRightPosition: function (combo, popup, extraWidth) {
var el = combo.element, viewBounds = popup.element.bounds();
return {
left: el.offset().left + el.outerWidth() - viewBounds.width - (extraWidth || 0)
};
},
getTopPosition: function (combo, popup, extraHeight) {
return {
top: combo.element.offset().top - popup.element.outerHeight() - (extraHeight || 0)
@ -19767,17 +19796,28 @@ BI.prepares.push(function () {
return BI.DOM.getLeftPosition(combo, popup, extraWidth).left >= 0;
},
isInnerLeftSpaceEnough: function (combo, popup, extraWidth) {
var viewBounds = popup.element.bounds(),windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
return BI.DOM.getInnerLeftPosition(combo, popup, extraWidth).left + viewBounds.width <= windowBounds.width;
},
isRightSpaceEnough: function (combo, popup, extraWidth) {
var viewBounds = popup.element.bounds(), windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
var viewBounds = popup.element.bounds(),
windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
return BI.DOM.getRightPosition(combo, popup, extraWidth).left + viewBounds.width <= windowBounds.width;
},
isInnerRightSpaceEnough: function (combo, popup, extraWidth) {
return BI.DOM.getInnerRightPosition(combo, popup, extraWidth).left >= 0;
},
isTopSpaceEnough: function (combo, popup, extraHeight) {
return BI.DOM.getTopPosition(combo, popup, extraHeight).top >= 0;
},
isBottomSpaceEnough: function (combo, popup, extraHeight) {
var viewBounds = popup.element.bounds(), windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
var viewBounds = popup.element.bounds(),
windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
return BI.DOM.getBottomPosition(combo, popup, extraHeight).top + viewBounds.height <= windowBounds.height;
},
@ -19792,7 +19832,8 @@ BI.prepares.push(function () {
},
getLeftAlignPosition: function (combo, popup, extraWidth) {
var viewBounds = popup.element.bounds(), windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
var viewBounds = popup.element.bounds(),
windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
var left = combo.element.offset().left + extraWidth;
if (left + viewBounds.width > windowBounds.width) {
left = windowBounds.width - viewBounds.width;
@ -19862,7 +19903,8 @@ BI.prepares.push(function () {
},
getTopAdaptPosition: function (combo, popup, extraHeight, needAdaptHeight) {
var popupBounds = popup.element.bounds(), windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
var popupBounds = popup.element.bounds(),
windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
if (BI.DOM.isTopSpaceEnough(combo, popup, extraHeight)) {
return BI.DOM.getTopPosition(combo, popup, extraHeight);
}
@ -19974,9 +20016,9 @@ BI.prepares.push(function () {
extraWidth || (extraWidth = 0);
extraHeight || (extraHeight = 0);
var i, direct;
var leftRight = [], topBottom = [];
var leftRight = [], topBottom = [], innerLeftRight = [];
var isNeedAdaptHeight = false, tbFirst = false, lrFirst = false;
var left, top, pos;
var left, top, pos, firstDir = directions[0];
for (i = 0; i < directions.length; i++) {
direct = directions[i];
switch (direct) {
@ -19992,6 +20034,12 @@ BI.prepares.push(function () {
case "bottom":
topBottom.push(direct);
break;
case "innerLeft":
innerLeftRight.push(direct);
break;
case "innerRight":
innerLeftRight.push(direct);
break;
}
}
for (i = 0; i < directions.length; i++) {
@ -20083,42 +20131,90 @@ BI.prepares.push(function () {
}
tbFirst = true;
break;
case "innerLeft":
if (!isNeedAdaptHeight) {
var tW = tbFirst ? extraHeight : extraWidth, tH = tbFirst ? 0 : extraHeight;
if (BI.DOM.isInnerLeftSpaceEnough(combo, popup, tW)) {
left = BI.DOM.getInnerLeftPosition(combo, popup, tW).left;
if (topBottom[0] === "bottom") {
pos = BI.DOM.getTopAlignPosition(combo, popup, tH, needAdaptHeight);
pos.dir = "innerLeft,bottom";
} else {
pos = BI.DOM.getBottomAlignPosition(combo, popup, tH, needAdaptHeight);
pos.dir = "innerLeft,top";
}
if (tbFirst) {
pos.change = "innerLeft";
}
pos.left = left;
return pos;
}
}
lrFirst = true;
break;
case "innerRight":
if (!isNeedAdaptHeight) {
var tW = tbFirst ? extraHeight : extraWidth, tH = tbFirst ? extraWidth : extraHeight;
if (BI.DOM.isInnerRightSpaceEnough(combo, popup, tW)) {
left = BI.DOM.getInnerRightPosition(combo, popup, tW).left;
if (topBottom[0] === "bottom") {
pos = BI.DOM.getTopAlignPosition(combo, popup, tH, needAdaptHeight);
pos.dir = "innerRight,bottom";
} else {
pos = BI.DOM.getBottomAlignPosition(combo, popup, tH, needAdaptHeight);
pos.dir = "innerRight,top";
}
if (tbFirst) {
pos.change = "innerRight";
}
pos.left = left;
return pos;
}
}
break;
}
}
// 此处为四个方向放不下时挑空间最大的方向去放置, 也就是说我设置了弹出方向为"bottom,left",
// 最后发现实际弹出方向可能是"top,left",那么此时外界获取popup的方向应该是"top,left"
switch (directions[0]) {
case "left":
case "right":
if (BI.DOM.isRightSpaceLarger(combo)) {
left = BI.DOM.getRightAdaptPosition(combo, popup, extraWidth).left;
firstDir = "right";
} else {
left = BI.DOM.getLeftAdaptPosition(combo, popup, extraWidth).left;
firstDir = "left";
}
if (topBottom[0] === "bottom") {
pos = BI.DOM.getTopAlignPosition(combo, popup, extraHeight, needAdaptHeight);
pos.left = left;
pos.dir = directions[0] + ",bottom";
pos.dir = firstDir + ",bottom";
return pos;
}
pos = BI.DOM.getBottomAlignPosition(combo, popup, extraHeight, needAdaptHeight);
pos.left = left;
pos.dir = directions[0] + ",top";
pos.dir = firstDir + ",top";
return pos;
default :
if (BI.DOM.isBottomSpaceLarger(combo)) {
pos = BI.DOM.getBottomAdaptPosition(combo, popup, extraHeight, needAdaptHeight);
firstDir = "bottom";
} else {
pos = BI.DOM.getTopAdaptPosition(combo, popup, extraHeight, needAdaptHeight);
firstDir = "top";
}
if (leftRight[0] === "right") {
left = BI.DOM.getLeftAlignPosition(combo, popup, extraWidth, needAdaptHeight).left;
pos.left = left;
pos.dir = directions[0] + ",right";
pos.dir = firstDir + ",right";
return pos;
}
left = BI.DOM.getRightAlignPosition(combo, popup, extraWidth).left;
pos.left = left;
pos.dir = directions[0] + ",left";
pos.dir = firstDir + ",left";
return pos;
}
},

780
dist/demo.js vendored

@ -495,7 +495,596 @@ BI.shortcut("demo.icon_label", Demo.IconLabel);Demo.Label = BI.inherit(BI.Widget
};
}
});
BI.shortcut("demo.label", Demo.Label);Demo.Message = BI.inherit(BI.Widget, {
BI.shortcut("demo.label", Demo.Label);/**
* 整理所有label场景
*/
Demo.LabelScene = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-label"
},
render: function () {
var items = [];
items.push(this.createExpander("1.1.1 文字居中,有宽度和高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg6",
text: "设置了textWidth,则一定是嵌套结构,因此需要用center_adapt布局容纳一下.为了实现不足一行时文字水平居中,超出一行时左对齐,需要设置maxWidth.",
whiteSpace: "normal",
height: 50,
width: 500,
textWidth: 200,
textAlign: "center"
}));
items.push(this.createExpander("1.1.2 居中,有宽度和高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg6",
text: "居中,有宽度高度,有文字宽度,whiteSpace为nowrap,maxWidth会限制文字",
whiteSpace: "nowrap",
height: 50,
width: 500,
textWidth: 350,
textAlign: "center"
}));
items.push((this.createExpander("1.2.1 居中,有宽度无高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg6",
text: "居中,有宽度无高度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
width: 500,
textWidth: 200,
textAlign: "center"
})));
items.push((this.createExpander("1.2.1 居中,有宽度无高度,有文字宽度,whiteSpace为normal,高度被父容器拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg6",
text: "此时虽然没有对label设置高度,但由于使用了center_adapt布局,依然会垂直方向居中",
whiteSpace: "normal",
width: 500,
textWidth: 200,
textAlign: "center"
},
top: 0,
left: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("1.2.2 居中,有宽度无高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg6",
text: "居中,有宽度无高度,有文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
width: 500,
textWidth: 350,
textAlign: "center"
})));
items.push((this.createExpander("1.3.1 居中,有宽度和高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,有宽度高度,无文字宽度,whiteSpace为normal,只需用center_adapt布局包一下即可.度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,whiteSpace为normal",
width: 500,
whiteSpace: "normal",
textAlign: "center",
height: 50
})));
items.push((this.createExpander("1.3.2 居中,有宽度无高度,无文字宽度,whiteSpace为normal", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg3",
text: "居中,有宽度无高度,无文字宽度,whiteSpace为normal,只需用center_adapt布局包一下即可.度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,下即可.居中,有宽度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,度,无文字宽度,whiteSpace为normal居中,有宽度,无文字宽度,whiteSpace为normal",
width: 500,
whiteSpace: "normal",
textAlign: "center"
},
top: 0,
left: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("1.4 居中,有宽度和高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,有宽度500有高度50,无文字宽度,whiteSpace为nowrap,此处无需两层div,设置text即可,然后设置line-height为传入高度即可实现垂直方向居中",
width: 500,
whiteSpace: "nowrap",
textAlign: "center",
height: 50
})));
items.push((this.createExpander("1.5.1 居中,有宽度无高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,有宽度500无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
width: 500,
whiteSpace: "nowrap",
textAlign: "center"
})));
items.push((this.createExpander("1.5.2 居中,有宽度无高度,无文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 50,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg3",
text: "居中,有宽度500无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
width: 500,
whiteSpace: "nowrap",
textAlign: "center"
},
top: 0,
left: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("1.6.1 居中,无宽度无高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度,有文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
textWidth: 500,
whiteSpace: "nowrap",
textAlign: "center"
})));
items.push((this.createExpander("1.6.2 居中,无宽度无高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
textWidth: 500,
whiteSpace: "normal",
textAlign: "center"
})));
items.push((this.createExpander("1.6.3 居中,无宽度无,有文字宽度,whiteSpace为normal,被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
textWidth: 500,
whiteSpace: "normal",
textAlign: "center"
},
left: 0,
right: 0,
top: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("1.7.1 居中,无宽度无高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "center"
})));
items.push((this.createExpander("1.7.2 居中,无宽度无高度,无文字宽度,whiteSpace为normal,被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "center"
},
left: 0,
right: 0,
top: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("1.7.3 居中,无宽度有高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度有高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
height: 50,
textAlign: "center"
})));
items.push((this.createExpander("1.8 居中,无宽度有高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度有高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
height: 50,
textAlign: "center"
})));
items.push((this.createExpander("1.9 居中,无宽度无高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "center"
})));
items.push((this.createExpander("1.9.1 居中,无宽度无高度,无文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 50,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg3",
text: "居中,无宽度无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "center"
},
top: 0,
left: 0,
right: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("2.1.1 居左,有宽度有高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度有高度,有文字宽度,whiteSpace为normal,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
textWidth: 300,
height: 50,
width: 500
})));
items.push((this.createExpander("2.1.2 居左,有宽度有高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度有高度,有文字宽度,whiteSpace为normal,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
textWidth: 300,
height: 50,
width: 500
})));
items.push((this.createExpander("2.2.1 居左,有宽度无高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度无高度,有文字宽度,whiteSpace为normal,不设置高度,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
textWidth: 300,
width: 500
})));
items.push((this.createExpander("2.2.2 居左,有宽度无高度,有文字宽度,whiteSpace为normal,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度无高度,有文字宽度,whiteSpace为normal,不设置高度,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
textWidth: 300,
width: 500
},
top: 0,
bottom: 0,
left: 0
}
]
})));
items.push((this.createExpander("2.2.3 居左,有宽度无高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度无高度,有文字宽度,whiteSpace为nowrap,不设置高度,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
textWidth: 300,
width: 500
})));
items.push((this.createExpander("2.2.4 居左,有宽度无高度,有文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度无高度,有文字宽度,whiteSpace为nowrap,不设置高度,为了演示这个是真的是normal的我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
textWidth: 300,
width: 500
},
top: 0,
bottom: 0,
left: 0
}
]
})));
items.push((this.createExpander("2.3.1 居左,有宽度有高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度有高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
height: 50,
vgap: 5,
width: 500
})));
items.push((this.createExpander("2.3.2 居左,有宽度有高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度有高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
height: 50,
width: 500
})));
items.push((this.createExpander("2.4.1 居左,有宽度无高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,有宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
width: 500
})));
items.push((this.createExpander("2.4.2 居左,有宽度无高度,无文字宽度,whiteSpace为normal,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg1",
text: "居左,有宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
width: 500
},
top: 0,
left: 0,
bottom: 0
}
]
})));
items.push((this.createExpander("2.5.1 居左,无宽度无高度,有文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
textWidth: 300
})));
items.push((this.createExpander("2.5.2 居左,无宽度无高度,有文字宽度,whiteSpace为normal,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
textWidth: 300
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
items.push((this.createExpander("2.5.3 居左,无宽度无高度,有文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
textWidth: 300
})));
items.push((this.createExpander("2.5.4 居左,无宽度无高度,有文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,有文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left",
textWidth: 300
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
items.push((this.createExpander("2.6.1 居左,无宽度有高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度有高度,无文字宽度,whiteSpace为nowrap,注意这个是设置了vgap的,为了实现居中,lineHeight要做计算,才能准确的垂直居中",
whiteSpace: "nowrap",
textAlign: "left",
vgap: 10,
height: 50
})));
items.push((this.createExpander("2.6.2 居左,无宽度有高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度有高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left",
height: 50
})));
items.push((this.createExpander("2.7.1 居左,无宽度无高度,无文字宽度,whiteSpace为normal", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left"
})));
items.push((this.createExpander("2.7.2 居左,无宽度无高度,无文字宽度,whiteSpace为normal,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left"
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
items.push((this.createExpander("2.7.3 居左,无宽度无高度,无文字宽度,whiteSpace为nowrap", {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left"
})));
items.push((this.createExpander("2.7.4 居左,无宽度无高度,无文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left"
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
items.push((this.createExpander("2.8 居左,无宽度无高度,无文字宽度,whiteSpace为nowrap,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为nowrap,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "nowrap",
textAlign: "left"
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
items.push((this.createExpander("2.8.2 居左,无宽度无高度,无文字宽度,whiteSpace为normal,高度被父级拉满", {
type: "bi.absolute",
height: 100,
items: [
{
el: {
type: "bi.label",
cls: "layout-bg2",
text: "居左,无宽度无高度,无文字宽度,whiteSpace为normal,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,我凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数,凑点字数",
whiteSpace: "normal",
textAlign: "left"
},
top: 0,
left: 0,
bottom: 0,
right: 0
}
]
})));
return {
type: "bi.vertical",
items: items,
hgap: 300,
vgap: 20
};
},
createExpander: function (text, popup) {
return {
type: "bi.vertical",
items: [
{
type: "bi.label",
cls: "demo-font-weight-bold",
textAlign: "left",
text: text,
height: 30
}, {
el: popup
}
]
};
}
});
BI.shortcut("demo.label_scene", Demo.LabelScene);Demo.Message = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-bubble"
},
@ -1265,7 +1854,7 @@ BI.shortcut("demo.tree_view", Demo.Func);Demo.Func = BI.inherit(BI.Widget, {
element: this,
items: [{
el: combo1,
left: 10,
left: 150,
top: 10
}, {
el: combo2,
@ -2773,6 +3362,10 @@ BI.shortcut("demo.value_chooser_pane", Demo.ValueChooserPane);Demo.BASE_CONFIG =
pId: 2,
text: "bi.label",
value: "demo.label"
},{
pId: 2,
text: "bi.label_scene",
value: "demo.label_scene"
}, {
pId: 2,
text: "bi.icon_label",
@ -3188,6 +3781,10 @@ Demo.COMPONENT_CONFIG = [{
pId: 10201,
text: "bi.combo(各种位置)",
value: "demo.combo2"
}, {
pId: 10201,
text: "bi.combo(內部位置)",
value: "demo.combo3"
}, {
pId: 10201,
text: "bi.expander",
@ -3504,6 +4101,10 @@ Demo.COMPONENT_CONFIG = [{
pId: 412,
text: "bi.date_time",
value: "demo.date_time"
}, {
pId: 412,
text: "bi.time_combo",
value: "demo.time_combo"
}, {
pId: 412,
text: "bi.time_interval",
@ -4267,6 +4868,80 @@ BI.shortcut("demo.combo2", Demo.Func);Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
_createEl: function () {
return {
type: "bi.label",
cls:"bi-border",
height: "100%",
text: "点击"
};
},
oneCombo: function () {
return BI.createWidget({
type: "bi.combo",
direction: "right,innerRight",
isNeedAdjustWidth: false,
isNeedAdjustHeight: false,
el: this._createEl(),
popup: {
el: {
type: "bi.layout",
width: 200,
height: 200
}
}
});
},
twoCombo: function () {
return BI.createWidget({
type: "bi.combo",
direction: "right,innerRight",
isNeedAdjustWidth: false,
isNeedAdjustHeight: false,
el: this._createEl(),
popup: {
el: {
type: "bi.layout",
width: 1000,
height: 200
}
}
});
},
threeCombo: function () {
return BI.createWidget({
type: "bi.combo",
direction: "right,innerRight",
isNeedAdjustWidth: false,
isNeedAdjustHeight: false,
el: this._createEl(),
popup: {
el: {
type: "bi.layout",
width: 400,
height: 200
}
}
});
},
render: function () {
return {
type: "bi.grid",
hgap: 10,
vgap: 5,
items: [[this.oneCombo()], [this.twoCombo()], [this.threeCombo()]]
};
}
});
BI.shortcut("demo.combo3", Demo.Func);Demo.Func = BI.inherit(BI.Widget, {
props: {
baseCls: "demo-func"
},
render: function () {
return {
type: "bi.vertical",
@ -6607,7 +7282,6 @@ BI.shortcut("demo.searcher_view", Demo.Func);Demo.Face = BI.inherit(BI.Widget, {
type: "bi.text_button",
cls: "bi-list-item-active",
text: "测试激活状态",
forceCenter: true
}
}]
};
@ -6629,7 +7303,6 @@ BI.shortcut("demo.searcher_view", Demo.Func);Demo.Face = BI.inherit(BI.Widget, {
type: "bi.text_button",
cls: "bi-list-item-active",
text: "测试选中状态",
forceCenter: true
}
}]
};
@ -6672,7 +7345,6 @@ BI.shortcut("demo.searcher_view", Demo.Func);Demo.Face = BI.inherit(BI.Widget, {
el: {
type: "bi.text_button",
text: "这个按钮是灰化的",
forceCenter: true,
disabled: true
}
}]
@ -6709,7 +7381,6 @@ BI.shortcut("demo.searcher_view", Demo.Func);Demo.Face = BI.inherit(BI.Widget, {
type: "bi.text_button",
cls: "bi-list-item-active",
text: "测试悬浮状态",
forceCenter: true
}
}]
};
@ -6731,7 +7402,6 @@ BI.shortcut("demo.searcher_view", Demo.Func);Demo.Face = BI.inherit(BI.Widget, {
type: "bi.text_button",
cls: "bi-list-item-active",
text: "测试激活状态",
forceCenter: true
}
}]
};
@ -6753,7 +7423,6 @@ BI.shortcut("demo.searcher_view", Demo.Func);Demo.Face = BI.inherit(BI.Widget, {
type: "bi.text_button",
cls: "bi-list-item-active",
text: "测试选中状态",
forceCenter: true
}
}]
};
@ -8861,15 +9530,25 @@ Demo.Date = BI.inherit(BI.Widget, {
ref: function () {
self.datecombo = this;
},
width: 300
// value: {
// type: 1,
// value: {
// year: 2018,
// month: 2,
// day: 23
// }
// }
width: 300,
// allowEdit: false,
// format: "%Y-%X-%d", // yyyy-MM-dd
// format: "%Y/%X/%d", // yyyy/MM/dd
// format: "%Y-%x-%e", // yyyy-M-d
// format: "%Y/%x/%e", // yyyy/M/d
// format: "%X/%d/%Y", // MM/dd/yyyy
// format: "%X/%e/%y", // MM/d/yy
// format: "%X.%d.%Y", // MM.dd.yyyy
// format: "%X.%e.%Y", // MM.d.yyyy
// format: "%X-%e-%y", // MM.d.yyyy
value: {
type: 1,
value: {
year: 2018,
month: 2,
day: 23
}
}
}, {
type: "bi.button",
text: "getValue",
@ -8883,6 +9562,25 @@ Demo.Date = BI.inherit(BI.Widget, {
self.datetimecombo = this;
},
width: 300,
// allowEdit: false,
// format: "%Y-%X-%d %H:%M:%S", // yyyy-MM-dd HH:mm:ss
// format: "%Y/%X/%d %H:%M:%S", // yyyy/MM/dd HH:mm:ss
// format: "%Y-%X-%d %I:%M:%S", // yyyy-MM-dd hh:mm:ss
// format: "%Y/%X/%d %I:%M:%S", // yyyy/MM/dd hh:mm:ss
// format: "%Y-%X-%d %H:%M:%S %p", // yyyy-MM-dd HH:mm:ss a
// format: "Y/%X/%d %H:%M:%S %p", // yyyy/MM/dd HH:mm:ss a
// format: "%Y-%X-%d %I:%M:%S %p", // yyyy-MM-dd hh:mm:ss a
// format: "%Y/%X/%d %I:%M:%S %p", // yyyy/MM/dd hh:mm:ss a
// format: "%X/%d/%Y %I:%M:%S", // MM/dd/yyyy hh:mm:ss
// format: "%X/%d/%Y %H:%M:%S", // MM/dd/yyyy HH:mm:ss
// format: "%X/%d/%Y %I:%M:%S", // MM/dd/yyyy hh:mm:ss a
// format: "%X/%d/%Y %H:%M:%S %p", // MM/dd/yyyy HH:mm:ss a
// format: "%X/%d/%Y %I:%M:%S %p", // MM/dd/yyyy hh:mm:ss a
// format: "%X/%d/%Y %H:%M:%S %p", // MM/dd/yyyy HH:mm:ss a
// format: "%X/%d/%Y %l:%M %p", // MM/dd/yyyy h:mm a
// format: "%X-%d-%Y %k:%M %p", // MM/dd/yyyy H:mm a
// format: "%Y-%x-%e %l:%M", // yyyy-M-d h:mm
// format: "%Y-%x-%e %k:%M", // yyyy-M-d H:mm
value: {
type: 1,
value: {
@ -9255,6 +9953,7 @@ Demo.MultiSelectCombo = BI.inherit(BI.Widget, {
var self = this;
var widget = BI.createWidget({
type: "bi.multi_select_insert_combo",
// allowEdit: false,
itemsCreator: BI.bind(this._itemsCreator, this),
width: 200,
value: {
@ -10060,6 +10759,53 @@ Demo.Slider = BI.inherit(BI.Widget, {
BI.shortcut("demo.slider", Demo.Slider);/**
* Created by Dailer on 2017/7/13.
*/
Demo.TimeCombo = BI.inherit(BI.Widget, {
props: {
baseCls: ""
},
render: function () {
var self = this;
return {
type: "bi.horizontal_auto",
items: [{
type: "bi.time_combo",
ref: function (_ref) {
self.timeCombo = _ref;
},
// allowEdit: true,
// format: "%H:%M:%S", // HH:mm:ss
// format: "%I:%M:%S", // hh:mm:ss
// format: "%l:%M:%S", // h:mm:ss
// format: "%k:%M:%S", // H:mm:ss
// format: "%l:%M:%S %p", // h:mm:ss a
// format: "%l:%M", // h:mm
// format: "%k:%M", // H:mm
// format: "%I:%M", // hh:mm
// format: "%H:%M", // HH:mm
// format: "%M:%S", // mm:ss
value: {
hour: 12,
minute: 0,
second: 0
},
width: 300
}, {
type: "bi.button",
text: "getValue",
handler: function () {
BI.Msg.toast(JSON.stringify(self.timeCombo.getValue()));
},
width: 300
}],
vgap: 20
};
}
});
BI.shortcut("demo.time_combo", Demo.TimeCombo);/**
* Created by Dailer on 2017/7/13.
*/
Demo.TimeInterval = BI.inherit(BI.Widget, {
props: {
baseCls: ""

550
dist/fineui.css vendored

File diff suppressed because it is too large Load Diff

3520
dist/fineui.ie.js vendored

File diff suppressed because it is too large Load Diff

75
dist/fineui.ie.min.js vendored

File diff suppressed because one or more lines are too long

3520
dist/fineui.js vendored

File diff suppressed because it is too large Load Diff

2
dist/fineui.min.css vendored

File diff suppressed because one or more lines are too long

75
dist/fineui.min.js vendored

File diff suppressed because one or more lines are too long

2905
dist/fineui_without_jquery_polyfill.js vendored

File diff suppressed because it is too large Load Diff

6
dist/fix/fix.ie.js vendored

@ -946,7 +946,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
context && defineContext(this, context);
initMixins(this, mixins);
this._init();
this.init();
initState(this, state);
initComputed(this, computed);
digest(this);
@ -958,6 +958,10 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
Model.prototype._init = function _init() {};
Model.prototype.init = function init() {
this._init();
};
Model.prototype.destroy = function destroy() {
this.alive = false;
allModelInstances[this._modelHashId] = null;

6
dist/fix/fix.js vendored

@ -1357,7 +1357,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
childContext && defineContext(this, childContext);
this.$$model && (this.model.__ob__ = this.$$model.__ob__);
initMixins(this, mixins);
this._init();
this.init();
initState(this, state);
initComputed(this, computed);
initWatch(this, watch$$1);
@ -1370,6 +1370,10 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
Model.prototype._init = function _init() {};
Model.prototype.init = function init() {
this._init();
};
Model.prototype.destroy = function destroy() {
for (var _key3 in this._computedWatchers) {
this._computedWatchers[_key3].teardown();

BIN
dist/font/iconfont.eot vendored

Binary file not shown.

33
dist/font/iconfont.svg vendored

@ -80,7 +80,7 @@ Created by iconfont
<glyph glyph-name="normal9" unicode="&#59075;" d="M192 800h192A96 96 0 0 0 480 704v-288H192A96 96 0 0 0 96 512V704A96 96 0 0 0 192 800z m224-320V704a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32v-192a32 32 0 0 1 32-32h224zM192 352h288V64A96 96 0 0 0 384-32H192A96 96 0 0 0 96 64v192A96 96 0 0 0 192 352z m224-64H192a32 32 0 0 1-32-32v-192a32 32 0 0 1 32-32h192a32 32 0 0 1 32 32V288z m224 512h192A96 96 0 0 0 928 704v-192A96 96 0 0 0 832 416H544V704A96 96 0 0 0 640 800z m-32-320H832a32 32 0 0 1 32 32V704a32 32 0 0 1-32 32h-192a32 32 0 0 1-32-32v-224z m224-128a96 96 0 0 0 96-96v-192a96 96 0 0 0-96-96h-192A96 96 0 0 0 544 64V352H832z m-224-64V64a32 32 0 0 1 32-32h192a32 32 0 0 1 32 32v192a32 32 0 0 1-32 32H608z" horiz-adv-x="1024" />
<glyph glyph-name="normal10" unicode="&#59076;" d="M224 640V704A96 96 0 0 0 320 800h384A96 96 0 0 0 800 704v-64H896a32 32 0 1 0 0-64H128a32 32 0 0 0 0 64h96z m64 0h448V704a32 32 0 0 1-32 32H320a32 32 0 0 1-32-32v-64zM256 480v-448a32 32 0 0 1 32-32h448a32 32 0 0 1 32 32v448a32 32 0 1 0 64 0v-448a96 96 0 0 0-96-96h-448A96 96 0 0 0 192 32v448a32 32 0 0 0 64 0z m128 0a32 32 0 0 0 64 0V128a32 32 0 1 0-64 0V480z m192 0a32 32 0 0 0 64 0V128a32 32 0 1 0-64 0V480z" horiz-adv-x="1024" />
<glyph glyph-name="normal10" unicode="&#59076;" d="M800 640h96a32 32 0 1 0 0-64H128a32 32 0 1 0 0 64h96V752a64 64 0 0 0 64 64h448a64 64 0 0 0 64-64v-112z m-64 0V752H288v-112h448z m96-176v-448a64 64 0 0 0-64-64H256a64 64 0 0 0-64 64V464a32 32 0 1 0 64 0v-448h512V464a32 32 0 1 0 64 0z m-416 32a32 32 0 0 0 32-32v-320a32 32 0 1 0-64 0V464a32 32 0 0 0 32 32z m208 0a32 32 0 0 0 32-32v-320a32 32 0 1 0-64 0V464a32 32 0 0 0 32 32z" horiz-adv-x="1024" />
<glyph glyph-name="normal11" unicode="&#59077;" d="M480 658.624L308.864 487.488a32 32 0 1 0-45.312 45.248L489.856 759.04a32 32 0 0 0 45.248 0l226.304-226.304a32 32 0 1 0-45.248-45.248L544 659.648v-436.352a32 32 0 1 0-64 0V658.624zM192 64h640V288a32 32 0 1 0 64 0v-256a32 32 0 0 0-32-32h-704a32 32 0 0 0-32 32v256a32 32 0 0 0 64 0V64z" horiz-adv-x="1024" />
@ -1316,10 +1316,37 @@ Created by iconfont
<glyph glyph-name="yichangxiangqing" unicode="&#59144;" d="M256 0V320a256 256 0 1 0 512 0v-320h96a32 32 0 1 0 0-64h-704a32 32 0 1 0 0 64H256z m64 0h384V320a192 192 0 1 1-384 0v-320z m177.216 256h84.352c8.576 0 16.384-3.392 22.144-8.896a32 32 0 0 0 5.76-39.296l-64-110.848a32 32 0 1 0-55.424 32L526.464 192H446.08a32 32 0 0 0-32.256 47.68l64 110.848a32 32 0 1 0 55.424-32L497.28 256zM512 832a32 32 0 0 0 32-32v-128a32 32 0 0 0-64 0v128A32 32 0 0 0 512 832z m-240-51.264a32 32 0 0 0 43.712-11.712l64-110.848a32 32 0 1 0-55.424-32l-64 110.848a32 32 0 0 0 11.712 43.712zM96.064 611.2a32 32 0 0 0 43.712 11.712l110.848-64a32 32 0 1 0-32-55.424l-110.848 64a32 32 0 0 0-11.712 43.712z m831.872 0a32 32 0 0 0-11.712-43.712l-110.848-64a32 32 0 0 0-32 55.424l110.848 64a32 32 0 0 0 43.712-11.712zM752 780.736a32 32 0 0 0 11.712-43.712l-64-110.848a32 32 0 0 0-55.424 32l64 110.848a32 32 0 0 0 43.712 11.712z" horiz-adv-x="1024" />
<glyph glyph-name="huifuquanxianjichengfuzhi" unicode="&#59145;" d="M185.334733 90.94951a256.279757 256.279757 0 0 0 152.860929 199.377459 164.5632 164.5632 0 1 0 201.205939 0A255.987201 255.987201 0 0 0 694.822402 54.891884a36.5696 36.5696 0 1 0-73.1392 0 182.848 182.848 0 1 1-365.696001 0 36.423322 36.423322 0 0 0-7.31392-21.94176 438.835201 438.835201 0 1 1-26.988365 680.194562H329.126401a36.5696 36.5696 0 0 0 0-73.139201H146.2784a36.5696 36.5696 0 0 0-36.5696 36.569601V859.423086a36.5696 36.5696 0 0 0 73.1392 0v-83.23241A511.974401 511.974401 0 1 0 0 384.018285a36.5696 36.5696 0 0 0 73.1392 0c0-112.634368 42.420736-215.394945 112.195533-293.068775zM438.835201 329.163885a91.424 91.424 0 1 1 0 182.848 91.424 91.424 0 0 1 0-182.848zM585.113601 310.879085c20.917811 27.866035 34.082867 61.875763 36.277044 98.884198a91.424 91.424 0 1 1-81.696487 163.319834 181.750912 181.750912 0 0 1-78.478362 28.963124 164.5632 164.5632 0 1 0 224.537345-238.580071A255.987201 255.987201 0 0 0 841.100802 128.031084a36.5696 36.5696 0 0 0-73.1392 0A182.848 182.848 0 0 1 585.113601 310.879085z" horiz-adv-x="1024" />
<glyph glyph-name="huifuquanxianjichengfuzhi" unicode="&#59145;" d="M195.19511592 703.56253242a449.98350029 449.98350029 0 1 0-24.82408917-612.42754395l56.9229126 48.82320968a374.98625068 374.98625068 0 1 1 19.49928487 509.23132821 37.64861982 37.64861982 0 0 0-64.12264893 26.39903203c0 11.09959277 4.79982393 21.07422685 12.52454063 27.97397403zM127.54759677 790.33435107l223.11681856-223.1918165a22.49917471 22.49917471 0 0 0-15.8994167-38.39859228H111.57318213a22.49917471 22.49917471 0 0 0-22.49917471 22.49917558V774.43493438A22.49917471 22.49917471 0 0 0 127.54759677 790.33435107z m70.79740401-711.72390321a37.4986248 37.4986248 0 1 0 0 74.99724961 37.4986248 37.4986248 0 0 0 0-74.99724961z" horiz-adv-x="1024" />
<glyph glyph-name="danyonghuxianzhi" unicode="&#59224;" d="M630.784 374.033067c-110.3872-51.882667-155.101867-173.124267-155.101867-314.299734v-102.4H34.133333a443.938133 443.938133 0 0 0 291.566934 416.9728 273.066667 273.066667 0 1 0 304.264533 0l0.750933-0.273066zM648.533333 230.4v34.133333a136.533333 136.533333 0 1 0 273.066667 0v-34.133333h34.133333a34.133333 34.133333 0 0 0 34.133334-34.133333V76.8a187.733333 187.733333 0 0 0-187.733334-187.733333h-34.133333A187.733333 187.733333 0 0 0 580.266667 76.8v119.466667a34.133333 34.133333 0 0 0 34.133333 34.133333H648.533333z m68.266667 0h136.533333v34.133333a68.266667 68.266667 0 0 1-136.533333 0v-34.133333z m68.266667-98.986667a34.133333 34.133333 0 0 1-34.133334-34.133333v-68.266667a34.133333 34.133333 0 1 1 68.266667 0v68.266667a34.133333 34.133333 0 0 1-34.133333 34.133333z" horiz-adv-x="1024" />
<glyph glyph-name="danyonghuxianzhi" unicode="&#59224;" d="M630.784 374.03306699999996c-110.3872-51.882667-155.101867-173.124267-155.101867-314.299734v-102.4H34.133333a443.938133 443.938133 0 0 0 291.566934 416.9728 273.066667 273.066667 0 1 0 304.264533 0l0.750933-0.273066zM648.533333 230.39999999999998v34.133333a136.533333 136.533333 0 1 0 273.066667 0v-34.133333h34.133333a34.133333 34.133333 0 0 0 34.133334-34.133333V76.79999999999995a187.733333 187.733333 0 0 0-187.733334-187.733333h-34.133333A187.733333 187.733333 0 0 0 580.266667 76.79999999999995v119.466667a34.133333 34.133333 0 0 0 34.133333 34.133333H648.533333z m68.266667 0h136.533333v34.133333a68.266667 68.266667 0 0 1-136.533333 0v-34.133333z m68.266667-98.986667a34.133333 34.133333 0 0 1-34.133334-34.133333v-68.266667a34.133333 34.133333 0 1 1 68.266667 0v68.266667a34.133333 34.133333 0 0 1-34.133333 34.133333z" horiz-adv-x="1024" />
<glyph glyph-name="shouqi2" unicode="&#59226;" d="M186.181818 337.45454500000005h651.636364V430.545455H186.181818z" horiz-adv-x="1024" />
<glyph glyph-name="zhankai2" unicode="&#59227;" d="M465.454545 430.545455V709.818182h93.09091v-279.272727h279.272727v-93.09091H558.545455v-279.272727H465.454545V337.45454500000005H186.181818V430.545455h279.272727z" horiz-adv-x="1024" />
<glyph glyph-name="qiehuan" unicode="&#59228;" d="M512 576H320a192 192 0 0 1-1.792-384l-42.496-59.392C155.136 155.32799999999997 64 259.264 64 384c0 141.44 116.992 256 261.312 256h314.304L512 461.376V576z m-102.72-384l81.92 114.688V192H704a192 192 0 0 1 0 384h-20.096l44.608 62.336C858.88 623.808 960 515.456 960 384c0-141.44-116.992-256-261.312-256H363.52l45.76 64z" horiz-adv-x="1024" />
<glyph glyph-name="jilushuziduan" unicode="&#59319;" d="M781.888 512.256h-104l-43.904-264.896h125.12v-55.232H624.256l-25.984-135.68h-63.36l25.984 135.68H343.04l-29.248-135.68H252.16l29.248 135.68H192v55.232h100.736l48.768 264.896H219.648v55.232h131.584L377.28 704h61.696l-25.984-136.512h211.2L648.704 704h63.36l-22.72-136.512h92.608v-55.232z m-211.264-264.896l45.504 264.896h-211.2l-50.432-264.896h216.128z m376.384 464.96c3.456-5.12 4.224-10.752 2.24-16.96-1.856-6.144-5.12-10.112-9.856-11.776l-50.56-13.44 33.28-42.944a14.528 14.528 0 0 0 1.92-8c0-3.2-0.512-6.528-1.664-9.856a34.88 34.88 0 0 0-4.416-9.344 17.28 17.28 0 0 0-7.296-6.08 24.064 24.064 0 0 0-18.24 3.2 25.6 25.6 0 0 0-10.688 11.52v-0.64l-25.6 42.88-34.56-49.216c-0.768-2.176-2.752-3.776-5.76-4.864a24 24 0 0 0-6.912-1.6 41.536 41.536 0 0 0-10.56 1.28 11.328 11.328 0 0 0-7.424 6.4v-0.64a27.328 27.328 0 0 0 0 30.08l29.44 37.12h-0.64c-0.384 0-0.896 0.256-1.28 0.704h-2.56a172.544 172.544 0 0 0-16.64 4.416 1833.92 1833.92 0 0 1-21.12 6.464c-4.672 1.664-7.808 6.336-9.216 14.016a29.44 29.44 0 0 0 1.536 19.2 16.256 16.256 0 0 0 12.16 6.4 22.784 22.784 0 0 0 14.72-3.84h-0.64l19.84-7.04c6.848-2.944 13.44-5.12 19.84-6.4v10.88a15.872 15.872 0 0 1-0.32 2.88 12.032 12.032 0 0 0-0.32 2.88V748.8c0 6.016 1.984 10.688 6.08 14.08a22.528 22.528 0 0 0 15.104 5.12 23.04 23.04 0 0 0 13.44-5.12 16.384 16.384 0 0 0 6.912-14.08l-3.2-45.44 39.68 15.424a32.896 32.896 0 0 0 17.728 1.856 21.44 21.44 0 0 0 15.552-8.32z" horiz-adv-x="1024" />
<glyph glyph-name="jilushuziduanfuzhi" unicode="&#59320;" d="M813.888 512.256h-104l-43.84-264.896h125.12v-55.232h-134.912l-25.984-135.68h-63.36l25.984 135.68H375.168l-29.248-135.68H284.16l29.248 135.68H224v55.232h100.8l48.704 264.896H251.648v55.232h131.648L409.28 704h61.76l-26.048-136.512h211.264L680.64 704h63.36l-22.72-136.512h92.608v-55.232z m-211.2-264.896l45.44 264.896h-211.2l-50.432-264.896h216.128z m376.32 464.96c3.52-5.12 4.224-10.752 2.304-16.96-1.92-6.144-5.184-10.112-9.856-11.776l-50.56-13.44 33.216-42.944a14.528 14.528 0 0 0 1.92-8 34.88 34.88 0 0 0-6.08-19.2 17.28 17.28 0 0 0-7.296-6.08 24.064 24.064 0 0 0-18.24 3.2 25.6 25.6 0 0 0-10.624 11.52v-0.64l-25.6 42.88-34.56-49.216c-0.832-2.176-2.752-3.776-5.76-4.864a24 24 0 0 0-7.04-1.6 41.536 41.536 0 0 0-10.496 1.28 11.328 11.328 0 0 0-7.36 6.4v-0.64a27.328 27.328 0 0 0 0 30.08l29.44 37.12h-0.64c-0.448 0-0.896 0.256-1.344 0.704h-2.56a172.544 172.544 0 0 0-16.64 4.416 1833.92 1833.92 0 0 1-21.12 6.464c-4.672 1.664-7.808 6.336-9.216 14.016a29.44 29.44 0 0 0 1.536 19.2 16.256 16.256 0 0 0 12.16 6.4 22.784 22.784 0 0 0 14.72-3.84h-0.64l19.84-7.04c6.848-2.944 13.44-5.12 19.84-6.4v10.88a15.872 15.872 0 0 1-0.256 2.88 12.032 12.032 0 0 0-0.32 2.88V748.8c0 6.016 1.92 10.688 6.016 14.08a22.528 22.528 0 0 0 15.104 5.12 23.04 23.04 0 0 0 13.44-5.12 16.384 16.384 0 0 0 6.976-14.08l-3.2-45.44 39.68 15.424a32.896 32.896 0 0 0 17.664 1.856 21.44 21.44 0 0 0 15.616-8.32zM32 416v64h192v-64h-192z m0-128v64h192v-64h-192z" horiz-adv-x="1024" />
<glyph glyph-name="bukeliandong" unicode="&#59229;" d="M213.333333 853.333333h597.333334a170.666667 170.666667 0 0 0 170.666666-170.666666v-597.333334a170.666667 170.666667 0 0 0-170.666666-170.666666H213.333333a170.666667 170.666667 0 0 0-170.666666 170.666666V682.666667a170.666667 170.666667 0 0 0 170.666666 170.666666z m0-42.666666a128 128 0 0 1-128-128v-597.333334a128 128 0 0 1 128-128h597.333334a128 128 0 0 1 128 128V682.666667a128 128 0 0 1-128 128H213.333333z" horiz-adv-x="1024" />
<glyph glyph-name="bukeliandong_fanxiangkeliandong" unicode="&#59321;" d="M627.498667 85.333333H960a21.333333 21.333333 0 1 0 0-42.666666h-332.501333l84.266666-84.266667a21.333333 21.333333 0 1 0-30.165333-30.165333l-120.704 120.661333a21.333333 21.333333 0 0 0 0 30.208l120.704 120.661333a21.333333 21.333333 0 1 0 30.165333-30.165333L627.498667 85.333333zM981.333333 213.333333h-42.666666V682.666667a128 128 0 0 1-128 128H213.333333a128 128 0 0 1-128-128v-597.333334a128 128 0 0 1 128-128h256v-42.666666H213.333333a170.666667 170.666667 0 0 0-170.666666 170.666666V682.666667a170.666667 170.666667 0 0 0 170.666666 170.666666h597.333334a170.666667 170.666667 0 0 0 170.666666-170.666666v-469.333334z m-512-298.666666a21.333333 21.333333 0 1 0 0 42.666666 21.333333 21.333333 0 0 0 0-42.666666z m490.666667 277.162666a21.333333 21.333333 0 1 0 0 42.666667 21.333333 21.333333 0 0 0 0-42.666667z" horiz-adv-x="1024" />
<glyph glyph-name="keliandong" unicode="&#59322;" d="M449.536 283.13599999999997l301.653333 301.696a42.666667 42.666667 0 0 0 60.373334-60.330667l-331.861334-331.861333a42.538667 42.538667 0 0 0-60.373333 0L268.501333 343.46666700000003a42.666667 42.666667 0 0 0 60.330667 60.330666l120.704-120.661333z" horiz-adv-x="1024" />
<glyph glyph-name="youhuazhanshicengjibeifen-copy" unicode="&#59323;" d="M548.571429-55.00342899999998v877.714286h-438.857143v-146.285714h-73.142857v182.857143a36.571429 36.571429 0 0 0 36.571428 36.571428h1024a36.571429 36.571429 0 0 0 36.571429-36.571428V676.571429h-73.142857V822.637714h-438.857143v-877.714285h438.857143V91.42857100000003h73.142857v-182.857142a36.571429 36.571429 0 0 0-36.571429-36.571429H73.142857a36.571429 36.571429 0 0 0-36.571428 36.571429v182.857142h73.142857v-146.285714h438.857143z m-234.569143 475.428572L221.257143 513.170286a36.571429 36.571429 0 1 0 51.712 51.712l155.209143-155.136a36.571429 36.571429 0 0 0 0-51.712L272.969143 202.82514300000003a36.571429 36.571429 0 0 0-51.712 51.712l92.745143 92.745143H109.714286a36.571429 36.571429 0 0 0 0 73.142857h204.288z m542.646857 0.146286H1060.571429a36.571429 36.571429 0 1 0 0-73.142858h-204.580572l93.037714-93.037714a36.571429 36.571429 0 1 0-51.712-51.712l-155.209142 155.062857A36.425143 36.425143 0 0 0 731.428571 384a36.571429 36.571429 0 0 0 13.824 28.598857l152.064 152.137143a36.571429 36.571429 0 1 0 51.712-51.785143L856.649143 420.571429z" horiz-adv-x="1170" />

Before

Width:  |  Height:  |  Size: 281 KiB

After

Width:  |  Height:  |  Size: 288 KiB

BIN
dist/font/iconfont.ttf vendored

Binary file not shown.

BIN
dist/font/iconfont.woff vendored

Binary file not shown.

BIN
dist/font/iconfont.woff2 vendored

Binary file not shown.

321
dist/resource.css vendored

@ -71,359 +71,226 @@ textarea::-webkit-scrollbar-thumb:hover {
}
.bi-farbtastic .wheel {
background: url('images/1x/background/wheel.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/wheel.png');
_background: none;
}
.bi-farbtastic .overlay {
background: url('images/1x/background/mask.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/mask.png');
_background: none;
}
.bi-farbtastic .marker {
background: url('images/1x/background/marker.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/marker.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.center_open {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.roots_open {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.bottom_open {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.ztree li ul.line {
background: url('images/1x/icon/tree_vertical_line_1.png') repeat-y 1px 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_1.png');
_background: none;
}
.bi-theme-dark .ztree li ul.line {
background: url('images/1x/icon/dark/tree_vertical_line_1.png') repeat-y 1px 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_1.png');
_background: none;
}
.ztree li span.button.chk.checkbox_false_full {
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_full_focus {
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_part {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_part_focus {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_full {
background: url('images/2x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_active.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_full_focus {
background: url('images/2x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_active.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_part {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_part_focus {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_full {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_full_focus {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_part {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
}
.ztree.hack li span.button.chk.checkbox_false_part_focus {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_full {
background: url('images/1x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_active.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_full_focus {
background: url('images/1x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_active.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_part {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_part_focus {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree li span.button.root_open {
background: url('images/1x/icon/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_1.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.root_open {
background: url('images/1x/icon/dark/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_1.png');
_background: none;
}
.ztree li span.button.root_close {
background: url('images/1x/icon/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_1.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.root_close {
background: url('images/1x/icon/dark/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_1.png');
_background: none;
}
.ztree li span.button.roots_open {
background: url('images/1x/icon/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_open {
background: url('images/1x/icon/dark/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_2.png');
_background: none;
}
.ztree li span.button.roots_close {
background: url('images/1x/icon/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_close {
background: url('images/1x/icon/dark/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_2.png');
_background: none;
}
.ztree li span.button.center_open {
background: url('images/1x/icon/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_open {
background: url('images/1x/icon/dark/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_3.png');
_background: none;
}
.ztree li span.button.center_close {
background: url('images/1x/icon/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_close {
background: url('images/1x/icon/dark/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_3.png');
_background: none;
}
.ztree li span.button.bottom_open {
background: url('images/1x/icon/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_open {
background: url('images/1x/icon/dark/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_4.png');
_background: none;
}
.ztree li span.button.bottom_close {
background: url('images/1x/icon/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_close {
background: url('images/1x/icon/dark/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_4.png');
_background: none;
}
.ztree li span.button.roots_docu {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_docu {
background: url('images/1x/icon/dark/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_2.png');
_background: none;
}
.ztree li span.button.center_docu {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_docu {
background: url('images/1x/icon/dark/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_3.png');
_background: none;
}
.ztree li span.button.bottom_docu {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_docu {
background: url('images/1x/icon/dark/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_4.png');
_background: none;
}
.ztree li span.button.ico_loading {
background: url('images/1x/icon/loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/loading.gif');
_background: none;
}
.base-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_1.png') repeat-y 0 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_1.png');
_background: none;
}
.bi-theme-dark .base-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_1.png') repeat-y 0 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_1.png');
_background: none;
}
.first-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-theme-dark .first-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_2.png');
_background: none;
}
.mid-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-theme-dark .mid-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_3.png');
_background: none;
}
.last-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.bi-theme-dark .last-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_4.png');
_background: none;
}
.loading-background {
background: url('images/2x/icon/loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/loading.gif');
background-size: contain;
_background: none;
}
.auto-color-background {
background: url('images/2x/background/auto_color.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color.png');
background-size: contain;
_background: none;
}
.auto-color-normal-background {
background: url('images/2x/background/auto_color_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal.png');
background-size: contain;
_background: none;
}
.auto-color-normal-disabled-background {
background: url('images/2x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal_disable.png');
background-size: contain;
_background: none;
}
.trans-color-background {
background: url('images/2x/background/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_normal.png');
background-size: contain;
_background: none;
}
.trans-color-disabled-background {
background: url('images/2x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_disable.png');
background-size: contain;
_background: none;
}
.auto-color-background.hack {
background: url('images/1x/background/auto_color.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color.png');
_background: none;
}
.auto-color-normal-background.hack {
background: url('images/1x/background/auto_color_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal.png');
_background: none;
}
.auto-color-normal-disabled-background.hack {
background: url('images/1x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal_disable.png');
_background: none;
}
.trans-color-background.hack {
background: url('images/1x/background/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_normal.png');
_background: none;
}
.trans-color-disabled-background.hack {
background: url('images/1x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_disable.png');
_background: none;
}
@font-face {
font-family: 'bi';
font-family: "fineui";
src: url('font/iconfont.eot');
src: url('font/iconfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('font/iconfont.woff') format('woff'), /* chrome、firefox */ url('font/iconfont.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ url('font/iconfont.svg#svgFontName') format('svg');
/* iOS 4.1- */
}
.b-font {
font-family: "bi";
font-family: 'fineui';
font-style: normal;
-webkit-font-smoothing: antialiased;
-webkit-text-stroke-width: 0.2px;
-moz-osx-font-smoothing: grayscale;
}
.close-font .b-font {
@ -1319,548 +1186,368 @@ textarea::-webkit-scrollbar-thumb:hover {
.tree-collapse-icon-type1 .x-icon {
display: block;
background: url('images/2x/icon/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/tree_collapse_1.png');
background-size: contain;
_background: none;
}
.tree-collapse-icon-type1 .x-icon.hack {
background: url('images/1x/icon/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_1.png');
_background: none;
}
.tree-collapse-icon-type2 .x-icon {
display: block;
background: url('images/2x/icon/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/tree_collapse_2.png');
background-size: contain;
_background: none;
}
.tree-collapse-icon-type2 .x-icon.hack {
background: url('images/1x/icon/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_2.png');
_background: none;
}
.tree-collapse-icon-type3 .x-icon {
display: block;
background: url('images/2x/icon/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/tree_collapse_3.png');
background-size: contain;
_background: none;
}
.tree-collapse-icon-type3 .x-icon.hack {
background: url('images/1x/icon/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_3.png');
_background: none;
}
.tree-collapse-icon-type4 .x-icon {
display: block;
background: url('images/2x/icon/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/tree_collapse_4.png');
background-size: contain;
_background: none;
}
.tree-collapse-icon-type4 .x-icon.hack {
background: url('images/1x/icon/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_4.png');
_background: none;
}
.tree-expand-icon-type1 .x-icon {
display: block;
background: url('images/2x/icon/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/tree_expand_1.png');
background-size: contain;
_background: none;
}
.tree-expand-icon-type1 .x-icon.hack {
background: url('images/1x/icon/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_1.png');
_background: none;
}
.tree-expand-icon-type2 .x-icon {
display: block;
background: url('images/2x/icon/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/tree_expand_2.png');
background-size: contain;
_background: none;
}
.tree-expand-icon-type2 .x-icon.hack {
background: url('images/1x/icon/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_2.png');
_background: none;
}
.tree-expand-icon-type3 .x-icon {
display: block;
background: url('images/2x/icon/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/tree_expand_3.png');
background-size: contain;
_background: none;
}
.tree-expand-icon-type3 .x-icon.hack {
background: url('images/1x/icon/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_3.png');
_background: none;
}
.tree-expand-icon-type4 .x-icon {
display: block;
background: url('images/2x/icon/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/tree_expand_4.png');
background-size: contain;
_background: none;
}
.tree-expand-icon-type4 .x-icon.hack {
background: url('images/1x/icon/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_4.png');
_background: none;
}
.tree-vertical-line-type2 .x-icon {
display: block;
background: url('images/2x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/tree_vertical_line_2.png');
background-size: contain;
_background: none;
}
.tree-vertical-line-type2 .x-icon.hack {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.tree-vertical-line-type3 .x-icon {
display: block;
background: url('images/2x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/tree_vertical_line_3.png');
background-size: contain;
_background: none;
}
.tree-vertical-line-type3 .x-icon.hack {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.tree-vertical-line-type4 .x-icon {
display: block;
background: url('images/2x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/tree_vertical_line_4.png');
background-size: contain;
_background: none;
}
.tree-vertical-line-type4 .x-icon.hack {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.bi-theme-dark .tree-collapse-icon-type1 .x-icon {
display: block;
background: url('images/2x/icon/dark/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/dark/tree_collapse_1.png');
background-size: contain;
_background: none;
}
.bi-theme-dark .tree-collapse-icon-type1 .x-icon.hack {
background: url('images/1x/icon/dark/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_1.png');
_background: none;
}
.bi-theme-dark .tree-collapse-icon-type2 .x-icon {
display: block;
background: url('images/2x/icon/dark/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/dark/tree_collapse_2.png');
background-size: contain;
_background: none;
}
.bi-theme-dark .tree-collapse-icon-type2 .x-icon.hack {
background: url('images/1x/icon/dark/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_2.png');
_background: none;
}
.bi-theme-dark .tree-collapse-icon-type3 .x-icon {
display: block;
background: url('images/2x/icon/dark/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/dark/tree_collapse_3.png');
background-size: contain;
_background: none;
}
.bi-theme-dark .tree-collapse-icon-type3 .x-icon.hack {
background: url('images/1x/icon/dark/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_3.png');
_background: none;
}
.bi-theme-dark .tree-collapse-icon-type4 .x-icon {
display: block;
background: url('images/2x/icon/dark/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/dark/tree_collapse_4.png');
background-size: contain;
_background: none;
}
.bi-theme-dark .tree-collapse-icon-type4 .x-icon.hack {
background: url('images/1x/icon/dark/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_4.png');
_background: none;
}
.bi-theme-dark .tree-expand-icon-type1 .x-icon {
display: block;
background: url('images/2x/icon/dark/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/dark/tree_expand_1.png');
background-size: contain;
_background: none;
}
.bi-theme-dark .tree-expand-icon-type1 .x-icon.hack {
background: url('images/1x/icon/dark/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_1.png');
_background: none;
}
.bi-theme-dark .tree-expand-icon-type2 .x-icon {
display: block;
background: url('images/2x/icon/dark/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/dark/tree_expand_2.png');
background-size: contain;
_background: none;
}
.bi-theme-dark .tree-expand-icon-type2 .x-icon.hack {
background: url('images/1x/icon/dark/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_2.png');
_background: none;
}
.bi-theme-dark .tree-expand-icon-type3 .x-icon {
display: block;
background: url('images/2x/icon/dark/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/dark/tree_expand_3.png');
background-size: contain;
_background: none;
}
.bi-theme-dark .tree-expand-icon-type3 .x-icon.hack {
background: url('images/1x/icon/dark/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_3.png');
_background: none;
}
.bi-theme-dark .tree-expand-icon-type4 .x-icon {
display: block;
background: url('images/2x/icon/dark/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/dark/tree_expand_4.png');
background-size: contain;
_background: none;
}
.bi-theme-dark .tree-expand-icon-type4 .x-icon.hack {
background: url('images/1x/icon/dark/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_4.png');
_background: none;
}
.bi-theme-dark .tree-vertical-line-type2 .x-icon {
display: block;
background: url('images/2x/icon/dark/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/dark/tree_vertical_line_2.png');
background-size: contain;
_background: none;
}
.bi-theme-dark .tree-vertical-line-type2 .x-icon.hack {
background: url('images/1x/icon/dark/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_2.png');
_background: none;
}
.bi-theme-dark .tree-vertical-line-type3 .x-icon {
display: block;
background: url('images/2x/icon/dark/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/dark/tree_vertical_line_3.png');
background-size: contain;
_background: none;
}
.bi-theme-dark .tree-vertical-line-type3 .x-icon.hack {
background: url('images/1x/icon/dark/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_3.png');
_background: none;
}
.bi-theme-dark .tree-vertical-line-type4 .x-icon {
display: block;
background: url('images/2x/icon/dark/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/dark/tree_vertical_line_4.png');
background-size: contain;
_background: none;
}
.bi-theme-dark .tree-vertical-line-type4 .x-icon.hack {
background: url('images/1x/icon/dark/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_4.png');
_background: none;
}
.check-box-icon .x-icon {
display: block;
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.check-box-icon .x-icon.hack {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.check-box-icon:hover .x-icon,
.check-box-icon.hover .x-icon {
display: block;
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.check-box-icon:hover .x-icon.hack,
.check-box-icon.hover .x-icon.hack {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.check-box-icon:active .x-icon {
display: block;
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.check-box-icon:active .x-icon.hack {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.check-box-icon.active .x-icon {
display: block;
background: url('images/2x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_active.png');
background-size: contain;
_background: none;
}
.check-box-icon.active .x-icon.hack {
background: url('images/1x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_active.png');
_background: none;
}
.check-box-icon.disabled .x-icon {
display: block;
background: url('images/2x/icon/check_box_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_disable.png');
background-size: contain;
_background: none;
}
.check-box-icon.disabled .x-icon.hack {
background: url('images/1x/icon/check_box_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_disable.png');
_background: none;
}
.check-box-icon.disabled.active .x-icon {
display: block;
background: url('images/2x/icon/check_box_disable2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_disable2.png');
background-size: contain;
_background: none;
}
.check-box-icon.disabled.active .x-icon.hack {
background: url('images/1x/icon/check_box_disable2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_disable2.png');
_background: none;
}
.radio-icon .x-icon {
display: block;
background: url('images/2x/icon/radio_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/radio_normal.png');
background-size: contain;
_background: none;
}
.radio-icon .x-icon.hack {
background: url('images/1x/icon/radio_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/radio_normal.png');
_background: none;
}
.radio-icon:hover .x-icon,
.radio-icon.hover .x-icon {
display: block;
background: url('images/2x/icon/radio_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/radio_normal.png');
background-size: contain;
_background: none;
}
.radio-icon:hover .x-icon.hack,
.radio-icon.hover .x-icon.hack {
background: url('images/1x/icon/radio_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/radio_normal.png');
_background: none;
}
.radio-icon:active .x-icon {
display: block;
background: url('images/2x/icon/radio_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/radio_normal.png');
background-size: contain;
_background: none;
}
.radio-icon:active .x-icon.hack {
background: url('images/1x/icon/radio_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/radio_normal.png');
_background: none;
}
.radio-icon.active .x-icon {
display: block;
background: url('images/2x/icon/radio_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/radio_active.png');
background-size: contain;
_background: none;
}
.radio-icon.active .x-icon.hack {
background: url('images/1x/icon/radio_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/radio_active.png');
_background: none;
}
.radio-icon.disabled .x-icon {
display: block;
background: url('images/2x/icon/radio_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/radio_disable.png');
background-size: contain;
_background: none;
}
.radio-icon.disabled .x-icon.hack {
background: url('images/1x/icon/radio_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/radio_disable.png');
_background: none;
}
.radio-icon.disabled.active .x-icon {
display: block;
background: url('images/2x/icon/radio_disable2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/radio_disable2.png');
background-size: contain;
_background: none;
}
.radio-icon.disabled.active .x-icon.hack {
background: url('images/1x/icon/radio_disable2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/radio_disable2.png');
_background: none;
}
.check-half-select-icon .x-icon {
display: block;
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.check-half-select-icon .x-icon.hack {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.check-half-select-icon.disabled .x-icon {
display: block;
background: url('images/2x/icon/half_selected_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected_disable.png');
background-size: contain;
_background: none;
}
.check-half-select-icon.disabled .x-icon.hack {
background: url('images/1x/icon/half_selected_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected_disable.png');
_background: none;
}
.slider-icon .x-icon {
display: block;
background: url('images/2x/icon/slider_normal_small.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/slider_normal_small.png');
background-size: contain;
_background: none;
}
.slider-icon .x-icon.hack {
background: url('images/1x/icon/slider_normal_small.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/slider_normal_small.png');
_background: none;
}
.slider-icon:hover .x-icon,
.slider-icon.hover .x-icon {
display: block;
background: url('images/2x/icon/slider_active_small.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/slider_active_small.png');
background-size: contain;
_background: none;
}
.slider-icon:hover .x-icon.hack,
.slider-icon.hover .x-icon.hack {
background: url('images/1x/icon/slider_active_small.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/slider_active_small.png');
_background: none;
}
.slider-icon.disabled .x-icon {
display: block;
background: url('images/2x/icon/slider_normal_small.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/slider_normal_small.png');
background-size: contain;
_background: none;
}
.slider-icon.disabled .x-icon.hack {
background: url('images/1x/icon/slider_normal_small.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/slider_normal_small.png');
_background: none;
}
.auto-color-icon .x-icon {
display: block;
background: url('images/2x/icon/auto_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/auto_normal.png');
background-size: contain;
_background: none;
}
.auto-color-icon .x-icon.hack {
background: url('images/1x/icon/auto_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/auto_normal.png');
_background: none;
}
.auto-color-icon.active .x-icon {
display: block;
background: url('images/2x/icon/auto_select.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/auto_select.png');
background-size: contain;
_background: none;
}
.auto-color-icon.active .x-icon.hack {
background: url('images/1x/icon/auto_select.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/auto_select.png');
_background: none;
}
.auto-color-icon.disabled .x-icon {
display: block;
background: url('images/2x/icon/auto_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/auto_disable.png');
background-size: contain;
_background: none;
}
.auto-color-icon.disabled .x-icon.hack {
background: url('images/1x/icon/auto_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/auto_disable.png');
_background: none;
}
.trans-color-icon .x-icon {
display: block;
background: url('images/2x/icon/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/trans_normal.png');
background-size: contain;
_background: none;
}
.trans-color-icon .x-icon.hack {
background: url('images/1x/icon/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/trans_normal.png');
_background: none;
}
.trans-color-icon.active .x-icon {
display: block;
background: url('images/2x/icon/trans_select.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/trans_select.png');
background-size: contain;
_background: none;
}
.trans-color-icon.active .x-icon.hack {
background: url('images/1x/icon/trans_select.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/trans_select.png');
_background: none;
}
.trans-color-icon.disabled .x-icon {
display: block;
background: url('images/2x/icon/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/trans_disable.png');
background-size: contain;
_background: none;
}
.trans-color-icon.disabled .x-icon.hack {
background: url('images/1x/icon/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/trans_disable.png');
_background: none;
}
.icon-size-12 .b-font {
font-size: 12px;

44
dist/utils.js vendored

@ -10753,8 +10753,8 @@ _.extend(BI, {
s["%H"] = (hr < 10) ? ("0" + hr) : hr; // hour, range 00 to 23 (24h format)
s["%I"] = (ir < 10) ? ("0" + ir) : ir; // hour, range 01 to 12 (12h format)
s["%j"] = (dy < 100) ? ((dy < 10) ? ("00" + dy) : ("0" + dy)) : dy; // day of the year (range 001 to 366)
s["%k"] = hr; // hour, range 0 to 23 (24h format)
s["%l"] = ir; // hour, range 1 to 12 (12h format)
s["%k"] = hr + ""; // hour, range 0 to 23 (24h format)
s["%l"] = ir + ""; // hour, range 1 to 12 (12h format)
s["%X"] = (m < 9) ? ("0" + (1 + m)) : (1 + m); // month, range 01 to 12
s["%x"] = m + 1; // month, range 1 to 12
s["%M"] = (min < 10) ? ("0" + min) : min; // minute, range 00 to 59
@ -11014,8 +11014,8 @@ if (!_global.BI) {
},
createItems: function (data, innerAttr, outerAttr) {
innerAttr = BI.isArray(innerAttr) ? innerAttr : BI.makeArray(BI.flatten(data).length, innerAttr);
outerAttr = BI.isArray(outerAttr) ? outerAttr : BI.makeArray(BI.flatten(data).length, outerAttr);
innerAttr = BI.isArray(innerAttr) ? innerAttr : BI.makeArray(BI.flatten(data).length, innerAttr || {});
outerAttr = BI.isArray(outerAttr) ? outerAttr : BI.makeArray(BI.flatten(data).length, outerAttr || {});
return BI.map(data, function (i, item) {
if (BI.isArray(item)) {
return BI.createItems(item, innerAttr, outerAttr);
@ -12826,6 +12826,7 @@ if (!_global.BI) {
return left;
}
BI.cjkEncode = function (text) {
// alex:如果非字符串,返回其本身(cjkEncode(234) 返回 ""是不对的)
if (typeof text !== "string") {
@ -12884,21 +12885,16 @@ if (!_global.BI) {
};
// replace the html special tags
var SPECIAL_TAGS = {
"&": "&amp;",
"\"": "&quot;",
"<": "&lt;",
">": "&gt;",
" ": "&nbsp;"
};
BI.htmlEncode = function (text) {
return BI.isNull(text) ? "" : BI.replaceAll(text + "", "&|\"|<|>|\\s", function (v) {
switch (v) {
case "&":
return "&amp;";
case "\"":
return "&quot;";
case "<":
return "&lt;";
case ">":
return "&gt;";
case " ":
default:
return "&nbsp;";
}
return SPECIAL_TAGS[v] ? SPECIAL_TAGS[v] : "&nbsp;";
});
};
// html decode
@ -13086,6 +13082,20 @@ if (!_global.BI) {
})(jo);
};
/**
* 获取编码后的url
* @param urlTemplate url模板
* @param param 参数
* @returns {*|String}
* @example
* BI.getEncodeURL("design/{tableName}/{fieldName}",{tableName: "A", fieldName: "a"}) // design/A/a
*/
BI.getEncodeURL = function (urlTemplate, param) {
return urlTemplate.replaceAll("\\{(.*?)\\}", function (ori, str) {
return BI.encodeURIComponent(BI.isObject(param) ? param[str] : param);
});
};
BI.encodeURIComponent = function (url) {
BI.specialCharsMap = BI.specialCharsMap || {};
url = url || "";

6
dist/utils.min.js vendored

File diff suppressed because one or more lines are too long

4
dist/widget.css vendored

@ -320,6 +320,10 @@
-moz-border-radius: 3px;
border-radius: 3px;
}
.bi-time-trigger .show-text {
background-color: rgba(255, 255, 255, 0);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00ffffff,endColorstr=#00ffffff);
}
.bi-date-interval.time-error .bi-input {
color: #ff4949;
}

2785
dist/widget.js vendored

File diff suppressed because it is too large Load Diff

17
src/base/combination/combo.js

@ -10,6 +10,9 @@ BI.Combo = BI.inherit(BI.Widget, {
trigger: "click",
toggle: true,
direction: "bottom", // top||bottom||left||right||top,left||top,right||bottom,left||bottom,right||right,left
logic: {
dynamic: true
},
container: null, // popupview放置的容器,默认为this.element
isDefaultInit: false,
destroyWhenHide: false,
@ -67,14 +70,13 @@ BI.Combo = BI.inherit(BI.Widget, {
}
});
BI.createWidget({
type: "bi.vertical",
scrolly: false,
element: this,
BI.createWidget(BI.extend({
element: this
}, BI.LogicFactory.createLogic("vertical", BI.extend(o.logic, {
items: [
{el: this.combo}
{ el: this.combo }
]
});
}))));
o.isDefaultInit && (this._assertPopupView());
BI.Resizers.add(this.getName(), BI.bind(function () {
if (this.isViewVisible()) {
@ -472,7 +474,8 @@ BI.Combo = BI.inherit(BI.Widget, {
},
showView: function (e) {
if (this.isEnabled() && this.combo.isEnabled()) {
// 减少popup 调整宽高的次数
if (this.isEnabled() && this.combo.isEnabled() && !this.isViewVisible()) {
this._popupView(e);
}
},

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

@ -25,7 +25,6 @@ BI.Button = BI.inherit(BI.BasicButton, {
ghost: false, // 是否幽灵显示, 即正常状态无背景
textAlign: "center",
whiteSpace: "nowrap",
forceCenter: false,
textWidth: null,
textHeight: null,
hgap: props.clear ? 0 : 10,
@ -79,7 +78,6 @@ BI.Button = BI.inherit(BI.BasicButton, {
type: "bi.label",
textAlign: o.textAlign,
whiteSpace: o.whiteSpace,
forceCenter: o.forceCenter,
textWidth: o.textWidth,
textHeight: o.textHeight,
hgap: o.hgap,

2
src/base/single/button/buttons/button.text.js

@ -12,7 +12,6 @@ BI.TextButton = BI.inherit(BI.BasicButton, {
baseCls: (conf.baseCls || "") + " bi-text-button",
textAlign: "center",
whiteSpace: "nowrap",
forceCenter: false,
textWidth: null,
textHeight: null,
hgap: 0,
@ -33,7 +32,6 @@ BI.TextButton = BI.inherit(BI.BasicButton, {
whiteSpace: o.whiteSpace,
textWidth: o.textWidth,
textHeight: o.textHeight,
forceCenter: o.forceCenter,
width: o.width,
height: o.height,
hgap: o.hgap,

11
src/base/single/editor/editor.js

@ -51,7 +51,6 @@ BI.Editor = BI.inherit(BI.Single, {
type: "bi.label",
cls: "bi-water-mark",
text: this.options.watermark,
forceCenter: true,
height: o.height - 2 * (o.vgap + o.tgap),
whiteSpace: "nowrap",
textAlign: "left"
@ -185,6 +184,9 @@ BI.Editor = BI.inherit(BI.Single, {
this.editor.on(BI.Input.EVENT_CONFIRM, function () {
self.fireEvent(BI.Editor.EVENT_CONFIRM, arguments);
});
this.editor.on(BI.Input.EVENT_CHANGE_CONFIRM, function () {
self.fireEvent(BI.Editor.EVENT_CHANGE_CONFIRM, arguments);
});
this.element.click(function (e) {
e.stopPropagation();
return false;
@ -238,7 +240,7 @@ BI.Editor = BI.inherit(BI.Single, {
var o = this.options;
var errorText = o.errorText;
if (BI.isFunction(errorText)) {
errorText = errorText(this.editor.getValue());
errorText = errorText(BI.trim(this.editor.getValue()));
}
if (!this.disabledError && BI.isKey(errorText)) {
BI.Bubbles[b ? "show" : "hide"](this.getName(), errorText, this, {
@ -298,6 +300,10 @@ BI.Editor = BI.inherit(BI.Single, {
return this.editor.getLastValidValue();
},
getLastChangedValue: function () {
return this.editor.getLastChangedValue();
},
getValue: function () {
if (!this.isValid()) {
return BI.trim(this.editor.getLastValidValue());
@ -329,6 +335,7 @@ BI.Editor.EVENT_START = "EVENT_START";
BI.Editor.EVENT_PAUSE = "EVENT_PAUSE";
BI.Editor.EVENT_STOP = "EVENT_STOP";
BI.Editor.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.Editor.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.Editor.EVENT_VALID = "EVENT_VALID";
BI.Editor.EVENT_ERROR = "EVENT_ERROR";
BI.Editor.EVENT_ENTER = "EVENT_ENTER";

10
src/base/single/editor/editor.textarea.js

@ -30,9 +30,9 @@ BI.TextAreaEditor = BI.inherit(BI.Single, {
type: "bi.adaptive",
items: [this.content]
},
left: 10,
left: 4,
right: 10,
top: 8,
top: 4,
bottom: 8
}]
});
@ -81,9 +81,9 @@ BI.TextAreaEditor = BI.inherit(BI.Single, {
if (!this.watermark) {
this.watermark = BI.createWidget({
type: "bi.text_button",
cls: "bi-water-mark",
cls: "bi-water-mark cursor-default",
textAlign: "left",
height: 30,
height: 20,
text: o.watermark,
invalid: o.invalid,
disabled: o.disabled
@ -96,7 +96,7 @@ BI.TextAreaEditor = BI.inherit(BI.Single, {
element: this,
items: [{
el: this.watermark,
left: 10,
left: 4,
top: 4,
right: 0
}]

4
src/base/single/html/html.js

@ -50,10 +50,14 @@ BI.Html = BI.inherit(BI.Single, {
if (BI.isNumber(o.lineHeight)) {
this.element.css({lineHeight: o.lineHeight + "px"});
}
if (BI.isWidthOrHeight(o.maxWidth)) {
this.element.css({maxWidth: o.maxWidth});
}
this.element.css({
textAlign: o.textAlign,
whiteSpace: o.whiteSpace,
textOverflow: o.whiteSpace === 'nowrap' ? "ellipsis" : "",
overflow: o.whiteSpace === "nowrap" ? "" : "auto"
});
if (o.handler) {
this.text = BI.createWidget({

4
src/base/single/input/checkbox/checkbox.js

@ -11,8 +11,8 @@ BI.Checkbox = BI.inherit(BI.BasicButton, {
handler: BI.emptyFn,
width: 16,
height: 16,
iconWidth: 14,
iconHeight: 14
iconWidth: 16,
iconHeight: 16
},
render: function () {

9
src/base/single/input/input.js

@ -111,9 +111,13 @@ BI.Input = BI.inherit(BI.Single, {
self._isEditing = false;
self._start = false;
if (self.isValid()) {
var lastValidValue = self._lastValidValue;
self._lastValidValue = self.getValue();
self.fireEvent(BI.Controller.EVENT_CHANGE, BI.Events.CONFIRM, self.getValue(), self);
self.fireEvent(BI.Input.EVENT_CONFIRM);
if(self._lastValidValue !== lastValidValue) {
self.fireEvent(BI.Input.EVENT_CHANGE_CONFIRM);
}
}
self.fireEvent(BI.Input.EVENT_BLUR);
}
@ -263,6 +267,10 @@ BI.Input = BI.inherit(BI.Single, {
},
getLastValidValue: function () {
return this._lastValidValue;
},
getLastChangedValue: function () {
return this._lastChangedValue;
},
@ -299,6 +307,7 @@ BI.Input.EVENT_BACKSPACE = "EVENT_BACKSPACE";
BI.Input.EVENT_START = "EVENT_START";
BI.Input.EVENT_PAUSE = "EVENT_PAUSE";
BI.Input.EVENT_STOP = "EVENT_STOP";
BI.Input.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.Input.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.Input.EVENT_REMOVE = "EVENT_REMOVE";
BI.Input.EVENT_EMPTY = "EVENT_EMPTY";

257
src/base/single/label/html.label.js

@ -9,7 +9,6 @@ BI.HtmlLabel = BI.inherit(BI.Single, {
baseCls: (conf.baseCls || "") + " bi-label",
textAlign: "center",
whiteSpace: "nowrap", // normal or nowrap
forceCenter: false, // 是否无论如何都要居中, 不考虑超出边界的情况, 在未知宽度和高度时有效
textWidth: null,
textHeight: null,
hgap: 0,
@ -49,28 +48,22 @@ BI.HtmlLabel = BI.inherit(BI.Single, {
var json = this._createJson();
if (BI.isNumber(o.width) && o.width > 0) {
if (BI.isNumber(o.textWidth) && o.textWidth > 0) {
if (BI.isNumber(o.height) && o.height > 0) {
var gap = (o.width - o.textWidth) / 2;
json.maxWidth = o.textWidth;
if (BI.isNumber(o.height) && o.height > 0) { // 1.1
BI.createWidget({
type: "bi.adaptive",
type: "bi.center_adapt",
height: o.height,
scrollable: o.whiteSpace === "normal",
element: this,
items: [
{
el: (this.text = BI.createWidget(json)),
left: gap + o.hgap + o.lgap,
right: gap + o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
el: (this.text = BI.createWidget(json))
}
]
});
this.element.css({"line-height": o.height + "px"});
return;
}
json.width = o.textWidth;
BI.createWidget({
BI.createWidget({ // 1.2
type: "bi.center_adapt",
scrollable: o.whiteSpace === "normal",
element: this,
@ -83,16 +76,18 @@ BI.HtmlLabel = BI.inherit(BI.Single, {
return;
}
if (o.whiteSpace == "normal") {
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.center_adapt",
scrollable: o.whiteSpace === "normal",
BI.extend(json, {
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap,
bgap: o.bgap
});
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.center_adapt",
scrollable: o.whiteSpace === "normal",
element: this,
items: [this.text]
});
@ -102,33 +97,37 @@ BI.HtmlLabel = BI.inherit(BI.Single, {
this.element.css({
"line-height": o.height + "px"
});
BI.createWidget({
type: "bi.absolute",
scrollable: o.whiteSpace === "normal",
this.text = BI.createWidget(BI.extend(json, {
element: this,
items: [{
el: (this.text = BI.createWidget(json)),
left: o.hgap + o.lgap,
right: o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
}]
});
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap
}));
return;
}
json.width = o.width - 2 * o.hgap;
BI.extend(json, {
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap,
maxWidth: "100%"
});
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.center_adapt",
scrollable: o.whiteSpace === "normal",
element: this,
items: [{
el: (this.text = BI.createWidget(json))
}]
items: [this.text]
});
return;
}
if (BI.isNumber(o.textWidth) && o.textWidth > 0) {
json.width = o.textWidth;
json.maxWidth = o.textWidth;
BI.createWidget({
type: "bi.center_adapt",
scrollable: o.whiteSpace === "normal",
@ -142,60 +141,36 @@ BI.HtmlLabel = BI.inherit(BI.Single, {
return;
}
if (o.whiteSpace == "normal") {
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.center_adapt",
BI.extend(json, {
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap,
scrollable: o.whiteSpace === "normal",
bgap: o.bgap
});
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.center_adapt",
scrollable: true,
element: this,
items: [this.text]
});
return;
}
if (BI.isNumber(o.height) && o.height > 0) {
if (BI.isNumber(o.textHeight) && o.textHeight > 0) {
this.element.css({
"line-height": o.height + "px"
});
BI.createWidget({
type: "bi.adaptive",
height: o.height,
scrollable: o.whiteSpace === "normal",
element: this,
items: [{
el: (this.text = BI.createWidget(json)),
left: o.hgap + o.lgap,
right: o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
}]
});
return;
}
BI.extend(json, {
this.element.css({
"line-height": o.height + "px"
});
this.text = BI.createWidget(BI.extend(json, {
element: this,
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap
});
this.element.css({
"line-height": o.height + "px"
});
this.text = BI.createWidget(BI.extend(json, {
element: this
}));
BI.createWidget({
type: "bi.layout",
element: this.text,
scrollable: o.whiteSpace === "normal"
});
return;
}
BI.extend(json, {
@ -206,52 +181,40 @@ BI.HtmlLabel = BI.inherit(BI.Single, {
tgap: o.tgap,
bgap: o.bgap
});
if (o.forceCenter) {
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.center_adapt",
element: this,
items: [this.text]
});
return;
}
this.text = BI.createWidget(BI.extend(json, {
element: this
maxWidth: "100%"
}));
BI.createWidget({
type: "bi.layout",
element: this.text,
scrollable: o.whiteSpace === "normal"
type: "bi.center_adapt",
element: this,
items: [this.text]
});
},
_createNotCenterEl: function () {
var o = this.options;
var adaptLayout = o.textAlign === "right" ? "bi.right_vertical_adapt" : "bi.vertical_adapt";
var json = this._createJson();
if (BI.isNumber(o.width) && o.width > 0) {
if (BI.isNumber(o.textWidth) && o.textWidth > 0) {
json.width = o.textWidth;
if (BI.isNumber(o.height) && o.height > 0) {
BI.createWidget({
type: "bi.adaptive",
type: adaptLayout,
height: o.height,
scrollable: o.whiteSpace === "normal",
element: this,
items: [
{
el: (this.text = BI.createWidget(json)),
left: o.hgap + o.lgap,
right: o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
el: (this.text = BI.createWidget(json))
}
]
});
this.element.css({"line-height": o.height + "px"});
return;
}
BI.createWidget({
type: "bi.vertical_adapt",
type: adaptLayout,
scrollable: o.whiteSpace === "normal",
hgap: o.hgap,
vgap: o.vgap,
@ -266,47 +229,28 @@ BI.HtmlLabel = BI.inherit(BI.Single, {
}
]
});
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
if (o.whiteSpace == "normal") {
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.vertical_adapt",
scrollable: o.whiteSpace === "normal",
if (BI.isNumber(o.height) && o.height > 0) {
this.text = BI.createWidget(BI.extend(json, {
element: this,
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap,
element: this,
items: [this.text]
});
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
if (BI.isNumber(o.height) && o.height > 0) {
this.element.css({
"line-height": o.height + "px"
});
BI.createWidget({
type: "bi.absolute",
scrollable: o.whiteSpace === "normal",
element: this,
items: [{
el: (this.text = BI.createWidget(json)),
left: o.hgap + o.lgap,
right: o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
}]
});
bgap: o.bgap
}));
if (o.whiteSpace !== "normal") {
this.element.css({
"line-height": o.height - (o.vgap * 2) + "px"
});
}
return;
}
json.width = o.width - 2 * o.hgap - o.lgap - o.rgap;
BI.createWidget({
type: "bi.vertical_adapt",
type: adaptLayout,
scrollable: o.whiteSpace === "normal",
hgap: o.hgap,
vgap: o.vgap,
@ -319,13 +263,12 @@ BI.HtmlLabel = BI.inherit(BI.Single, {
el: (this.text = BI.createWidget(json))
}]
});
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
if (BI.isNumber(o.textWidth) && o.textWidth > 0) {
json.width = o.textWidth;
BI.createWidget({
type: "bi.vertical_adapt",
type: adaptLayout,
scrollable: o.whiteSpace === "normal",
hgap: o.hgap,
vgap: o.vgap,
@ -340,66 +283,23 @@ BI.HtmlLabel = BI.inherit(BI.Single, {
}
]
});
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
if (o.whiteSpace == "normal") {
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.vertical_adapt",
scrollable: o.whiteSpace === "normal",
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap,
element: this,
items: [this.text]
});
// 父亲有line-height,而当前label是inline-block,那么他的行高一定是父亲的lineHeight,就算text上设置了line-height
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
if (BI.isNumber(o.height) && o.height > 0) {
if (BI.isNumber(o.textHeight) && o.textHeight > 0) {
if (o.whiteSpace !== "normal") {
this.element.css({
"line-height": o.height + "px"
});
BI.createWidget({
type: "bi.adaptive",
height: o.height,
scrollable: o.whiteSpace === "normal",
element: this,
items: [{
el: (this.text = BI.createWidget(json)),
left: o.hgap + o.lgap,
right: o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
}]
"line-height": o.height - (o.vgap * 2) + "px"
});
return;
}
BI.extend(json, {
this.text = BI.createWidget(BI.extend(json, {
element: this,
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap
});
this.element.css({
"line-height": o.height + "px"
});
this.text = BI.createWidget(BI.extend(json, {
element: this
}));
BI.createWidget({
type: "bi.layout",
element: this.text,
scrollable: o.whiteSpace === "normal"
});
return;
}
BI.extend(json, {
@ -410,23 +310,14 @@ BI.HtmlLabel = BI.inherit(BI.Single, {
tgap: o.tgap,
bgap: o.bgap
});
if (o.forceCenter) {
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.vertical_adapt",
element: this,
items: [this.text]
});
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
this.text = BI.createWidget(BI.extend(json, {
element: this
maxWidth: "100%"
}));
BI.createWidget({
type: "bi.layout",
element: this.text,
scrollable: o.whiteSpace === "normal"
type: adaptLayout,
element: this,
items: [this.text]
});
},

270
src/base/single/label/label.js

@ -9,7 +9,6 @@ BI.Label = BI.inherit(BI.Single, {
baseCls: (conf.baseCls || "") + " bi-label",
textAlign: "center",
whiteSpace: "nowrap", // normal or nowrap
forceCenter: false, // 是否无论如何都要居中, 不考虑超出边界的情况, 在未知宽度和高度时有效
textWidth: null,
textHeight: null,
hgap: 0,
@ -56,29 +55,22 @@ BI.Label = BI.inherit(BI.Single, {
json.textAlign = "left";
if (BI.isNumber(o.width) && o.width > 0) {
if (BI.isNumber(o.textWidth) && o.textWidth > 0) {
if (BI.isNumber(o.height) && o.height > 0) {
var gap = (o.width - o.textWidth) / 2;
json.maxWidth = o.textWidth;
if (BI.isNumber(o.height) && o.height > 0) { // 1.1
BI.createWidget({
type: "bi.adaptive",
type: "bi.center_adapt",
height: o.height,
scrollable: o.whiteSpace === "normal",
element: this,
items: [
{
el: (this.text = BI.createWidget(json)),
left: gap + o.hgap + o.lgap,
right: gap + o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
el: (this.text = BI.createWidget(json))
}
]
});
this.element.css({"line-height": o.height + "px"});
return;
}
json.width = o.textWidth;
json.textAlign = o.textAlign;
BI.createWidget({
BI.createWidget({ // 1.2
type: "bi.center_adapt",
scrollable: o.whiteSpace === "normal",
element: this,
@ -90,7 +82,7 @@ BI.Label = BI.inherit(BI.Single, {
});
return;
}
if (o.whiteSpace == "normal") {
if (o.whiteSpace == "normal") { // 1.3
BI.extend(json, {
hgap: o.hgap,
vgap: o.vgap,
@ -108,39 +100,42 @@ BI.Label = BI.inherit(BI.Single, {
});
return;
}
if (BI.isNumber(o.height) && o.height > 0) {
if (BI.isNumber(o.height) && o.height > 0) { // 1.4
this.element.css({
"line-height": o.height + "px"
});
json.textAlign = o.textAlign;
BI.createWidget({
type: "bi.absolute",
scrollable: o.whiteSpace === "normal",
this.text = BI.createWidget(BI.extend(json, {
element: this,
items: [{
el: (this.text = BI.createWidget(json)),
left: o.hgap + o.lgap,
right: o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
}]
});
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap
}));
return;
}
json.width = o.width - 2 * o.hgap;
json.textAlign = o.textAlign;
BI.extend(json, { // 1.5
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap,
maxWidth: "100%"
});
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.center_adapt",
scrollable: o.whiteSpace === "normal",
element: this,
items: [{
el: (this.text = BI.createWidget(json))
}]
items: [this.text]
});
return;
}
if (BI.isNumber(o.textWidth) && o.textWidth > 0) {
json.width = o.textWidth;
if (BI.isNumber(o.textWidth) && o.textWidth > 0) { // 1.6
json.maxWidth = o.textWidth;
BI.createWidget({
type: "bi.center_adapt",
scrollable: o.whiteSpace === "normal",
@ -153,7 +148,7 @@ BI.Label = BI.inherit(BI.Single, {
});
return;
}
if (o.whiteSpace == "normal") {
if (o.whiteSpace == "normal") { // 1.7
BI.extend(json, {
hgap: o.hgap,
vgap: o.vgap,
@ -165,54 +160,26 @@ BI.Label = BI.inherit(BI.Single, {
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.center_adapt",
scrollable: o.whiteSpace === "normal",
scrollable: true,
element: this,
items: [this.text]
});
return;
}
if (BI.isNumber(o.height) && o.height > 0) {
if (BI.isNumber(o.textHeight) && o.textHeight > 0) {
this.element.css({
"line-height": o.height + "px"
});
json.textAlign = o.textAlign;
BI.createWidget({
type: "bi.adaptive",
height: o.height,
scrollable: o.whiteSpace === "normal",
element: this,
items: [{
el: (this.text = BI.createWidget(json)),
left: o.hgap + o.lgap,
right: o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
}]
});
return;
}
BI.extend(json, {
if (BI.isNumber(o.height) && o.height > 0) { // 1.8
this.element.css({
"line-height": o.height + "px"
});
json.textAlign = o.textAlign;
this.text = BI.createWidget(BI.extend(json, {
element: this,
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap
});
this.element.css({
"line-height": o.height + "px"
});
// 能走到这边,说明这个text不需要换行,并且不会做任何布局包装,那么这时候就该是什么align是什么align
json.textAlign = o.textAlign;
this.text = BI.createWidget(BI.extend(json, {
element: this
}));
BI.createWidget({
type: "bi.layout",
element: this.text,
scrollable: o.whiteSpace === "normal"
});
return;
}
BI.extend(json, {
@ -223,54 +190,40 @@ BI.Label = BI.inherit(BI.Single, {
tgap: o.tgap,
bgap: o.bgap
});
if (o.forceCenter) {
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.center_adapt",
element: this,
items: [this.text]
});
return;
}
// 能走到这边,说明这个text不需要换行,并且不会做任何布局包装,那么这时候就该是什么align是什么align
json.textAlign = o.textAlign;
this.text = BI.createWidget(BI.extend(json, {
element: this
maxWidth: "100%"
}));
BI.createWidget({
type: "bi.layout",
element: this.text,
scrollable: o.whiteSpace === "normal"
type: "bi.center_adapt",
element: this,
items: [this.text]
});
},
_createNotCenterEl: function () {
var o = this.options;
var adaptLayout = o.textAlign === "right" ? "bi.right_vertical_adapt" : "bi.vertical_adapt";
var json = this._createJson();
if (BI.isNumber(o.width) && o.width > 0) {
if (BI.isNumber(o.textWidth) && o.textWidth > 0) {
json.width = o.textWidth;
if (BI.isNumber(o.height) && o.height > 0) {
if (BI.isNumber(o.height) && o.height > 0) { // 2.1
BI.createWidget({
type: "bi.adaptive",
type: adaptLayout,
height: o.height,
scrollable: o.whiteSpace === "normal",
element: this,
items: [
{
el: (this.text = BI.createWidget(json)),
left: o.hgap + o.lgap,
right: o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
el: (this.text = BI.createWidget(json))
}
]
});
this.element.css({"line-height": o.height + "px"});
return;
}
BI.createWidget({
type: "bi.vertical_adapt",
BI.createWidget({ // 2.2
type: adaptLayout,
scrollable: o.whiteSpace === "normal",
hgap: o.hgap,
vgap: o.vgap,
@ -285,47 +238,28 @@ BI.Label = BI.inherit(BI.Single, {
}
]
});
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
if (o.whiteSpace == "normal") {
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.vertical_adapt",
scrollable: o.whiteSpace === "normal",
if (BI.isNumber(o.height) && o.height > 0) { // 2.3
this.text = BI.createWidget(BI.extend(json, {
element: this,
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap,
element: this,
items: [this.text]
});
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
if (BI.isNumber(o.height) && o.height > 0) {
this.element.css({
"line-height": o.height + "px"
});
BI.createWidget({
type: "bi.absolute",
scrollable: o.whiteSpace === "normal",
element: this,
items: [{
el: (this.text = BI.createWidget(json)),
left: o.hgap + o.lgap,
right: o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
}]
});
bgap: o.bgap
}));
if (o.whiteSpace !== "normal") {
this.element.css({
"line-height": o.height - (o.vgap * 2) + "px"
});
}
return;
}
json.width = o.width - 2 * o.hgap - o.lgap - o.rgap;
BI.createWidget({
type: "bi.vertical_adapt",
BI.createWidget({ // 2.4
type: adaptLayout,
scrollable: o.whiteSpace === "normal",
hgap: o.hgap,
vgap: o.vgap,
@ -338,13 +272,12 @@ BI.Label = BI.inherit(BI.Single, {
el: (this.text = BI.createWidget(json))
}]
});
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
if (BI.isNumber(o.textWidth) && o.textWidth > 0) {
json.width = o.textWidth;
BI.createWidget({
type: "bi.vertical_adapt",
BI.createWidget({ // 2.5
type: adaptLayout,
scrollable: o.whiteSpace === "normal",
hgap: o.hgap,
vgap: o.vgap,
@ -359,66 +292,23 @@ BI.Label = BI.inherit(BI.Single, {
}
]
});
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
if (o.whiteSpace == "normal") {
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.vertical_adapt",
scrollable: o.whiteSpace === "normal",
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap,
element: this,
items: [this.text]
});
// 父亲有line-height,而当前label是inline-block,那么他的行高一定是父亲的lineHeight,就算text上设置了line-height
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
if (BI.isNumber(o.height) && o.height > 0) {
if (BI.isNumber(o.textHeight) && o.textHeight > 0) {
if (o.whiteSpace !== "normal") {
this.element.css({
"line-height": o.height + "px"
});
BI.createWidget({
type: "bi.adaptive",
height: o.height,
scrollable: o.whiteSpace === "normal",
element: this,
items: [{
el: (this.text = BI.createWidget(json)),
left: o.hgap + o.lgap,
right: o.hgap + o.rgap,
top: o.vgap + o.tgap,
bottom: o.vgap + o.bgap
}]
"line-height": o.height - (o.vgap * 2) + "px"
});
return;
}
BI.extend(json, {
this.text = BI.createWidget(BI.extend(json, { // 2.6
element: this,
hgap: o.hgap,
vgap: o.vgap,
lgap: o.lgap,
rgap: o.rgap,
tgap: o.tgap,
bgap: o.bgap
});
this.element.css({
"line-height": o.height + "px"
});
this.text = BI.createWidget(BI.extend(json, {
element: this
}));
BI.createWidget({
type: "bi.layout",
element: this.text,
scrollable: o.whiteSpace === "normal"
});
return;
}
BI.extend(json, {
@ -429,35 +319,17 @@ BI.Label = BI.inherit(BI.Single, {
tgap: o.tgap,
bgap: o.bgap
});
if (o.forceCenter) {
this.text = BI.createWidget(json);
BI.createWidget({
type: "bi.vertical_adapt",
element: this,
items: [this.text]
});
o.textHeight && this.element.css({"line-height": o.textHeight + "px"});
return;
}
this.text = BI.createWidget(BI.extend(json, {
element: this
maxWidth: "100%"
}));
BI.createWidget({
type: "bi.layout",
element: this.text,
scrollable: o.whiteSpace === "normal"
type: adaptLayout,
element: this,
items: [this.text]
});
},
_setEnable: function (enable) {
BI.Label.superclass._setEnable.apply(this, arguments);
if (enable === true) {
this.element.removeClass("base-disabled disabled");
} else if (enable === false) {
this.element.addClass("base-disabled disabled");
}
},
doRedMark: function () {
this.text.doRedMark.apply(this.text, arguments);
},

43
src/base/single/text.js

@ -52,10 +52,14 @@ BI.Text = BI.inherit(BI.Single, {
if (BI.isNumber(o.lineHeight)) {
this.element.css({lineHeight: o.lineHeight + "px"});
}
if (BI.isWidthOrHeight(o.maxWidth)) {
this.element.css({maxWidth: o.maxWidth});
}
this.element.css({
textAlign: o.textAlign,
whiteSpace: o.whiteSpace,
textOverflow: o.whiteSpace === 'nowrap' ? "ellipsis" : "",
textOverflow: o.whiteSpace === "nowrap" ? "ellipsis" : "",
overflow: o.whiteSpace === "nowrap" ? "" : "auto"
});
if (o.handler) {
this.text = BI.createWidget({
@ -73,35 +77,38 @@ BI.Text = BI.inherit(BI.Single, {
} else {
this.text = this;
}
},
mounted: function () {
var o = this.options;
if (BI.isKey(o.text)) {
this.setText(o.text);
var text = this._getShowText();
if (BI.isKey(text)) {
this.setText(text);
} else if (BI.isKey(o.value)) {
this.setText(o.value);
}
if (BI.isKey(o.keyword)) {
this.text.element.__textKeywordMarked__(o.text, o.keyword, o.py);
this.doRedMark(o.keyword);
}
if (o.highLight) {
this.doHighLight();
}
},
_getShowText: function () {
var o = this.options;
return BI.isFunction(o.text) ? o.text() : o.text;
},
doRedMark: function (keyword) {
var o = this.options;
// render之后做的doredmark,这个时候虽然标红了,但是之后text mounted执行的时候并没有keyword
o.keyword = keyword;
this.text.element.__textKeywordMarked__(o.text || o.value, keyword, o.py);
this.text.element.__textKeywordMarked__(this._getShowText() || o.value, keyword, o.py);
},
unRedMark: function () {
var o = this.options;
o.keyword = "";
this.text.element.__textKeywordMarked__(o.text || o.value, "", o.py);
this.text.element.__textKeywordMarked__(this._getShowText() || o.value, "", o.py);
},
doHighLight: function () {
@ -125,9 +132,19 @@ BI.Text = BI.inherit(BI.Single, {
setText: function (text) {
BI.Text.superclass.setText.apply(this, arguments);
this.options.text = text;
this.text.element.html(BI.htmlEncode(text));
// 为textContext赋值为undefined时在ie和edge下会真的显示undefined
this.options.text = BI.isNotNull(text) ? text : "";
if (BI.isIE9Below()) {
this.text.element.html(BI.htmlEncode(this._getShowText()));
return;
}
if (/\s/.test(text)) {
this.text.element[0].innerHTML = BI.htmlEncode(this._getShowText());
} else {
// textContent性能更好,并且原生防xss
this.text.element[0].textContent = this._getShowText();
}
}
});
BI.shortcut("bi.text", BI.Text);
BI.shortcut("bi.text", BI.Text);

2
src/base/single/tip/tip.js

@ -8,7 +8,7 @@
*/
BI.Tip = BI.inherit(BI.Single, {
_defaultConfig: function () {
var conf = BI.Link.superclass._defaultConfig.apply(this, arguments);
var conf = BI.Tip.superclass._defaultConfig.apply(this, arguments);
return BI.extend(conf, {
_baseCls: (conf._baseCls || "") + " bi-tip",
zIndex: BI.zIndex_tip

4
src/base/single/tip/tip.tooltip.js

@ -57,12 +57,12 @@ BI.Tooltip = BI.inherit(BI.Tip, {
});
} else {
this.text = BI.createWidget({
type: "bi.label",
type: "bi.text",
element: this,
textAlign: "left",
whiteSpace: "normal",
text: o.text,
textHeight: 16,
height: 16,
hgap: this._const.hgap
});
}

8
src/base/tree/ztree/asynctree.js

@ -18,7 +18,7 @@ BI.AsyncTree = BI.inherit(BI.TreeView, {
var self = this;
var setting = {
async: {
enable: false,
enable: false, // 很明显这棵树把异步请求关掉了,所有的异步请求都是手动控制的
otherParam: BI.cjkEncodeDO(paras)
},
check: {
@ -108,6 +108,7 @@ BI.AsyncTree = BI.inherit(BI.TreeView, {
return setting;
},
// 用来更新this.options.paras.selectedValues, 和ztree内部无关
_selectTreeNode: function (treeId, treeNode) {
var self = this, o = this.options;
var parentValues = BI.deepClone(treeNode.parentValues || self._getParentValues(treeNode));
@ -153,7 +154,7 @@ BI.AsyncTree = BI.inherit(BI.TreeView, {
function callback (nodes, hasNext) {
self.nodes.addNodes(treeNode, nodes);
// 展开节点是没有分页的
if (hasNext === true) {
BI.delay(function () {
times++;
@ -170,6 +171,9 @@ BI.AsyncTree = BI.inherit(BI.TreeView, {
}
},
// a,b 两棵树
// a->b b->a 做两次校验, 构造一个校验后的map
// e.g. 以a为基准,如果b没有此节点,则在map中添加。 如b有,且是全选的, 则在map中构造全选(为什么不添加a的值呢? 因为这次是取并集), 如果b中也有和a一样的存值,就递归
_join: function (valueA, valueB) {
var self = this;
var map = {};

4
src/base/tree/ztree/jquery.ztree.excheck-3.5.js

@ -425,6 +425,8 @@
makeChkClass: function(setting, node) {
var checkedKey = setting.data.key.checked,
c = consts.checkbox, r = consts.radio,
checkboxType = setting.check.chkboxType;
var notEffectByOtherNode = (checkboxType.Y === "" && checkboxType.N === "");
fullStyle = "";
if (node.chkDisabled === true) {
fullStyle = c.DISABLED;
@ -433,7 +435,7 @@
} else if (setting.check.chkStyle == r.STYLE) {
fullStyle = (node.check_Child_State < 1)? c.FULL:c.PART;
} else {
fullStyle = node[checkedKey] ? ((node.check_Child_State === 2 || node.check_Child_State === -1) ? c.FULL:c.PART) : ((node.check_Child_State < 1)? c.FULL:c.PART);
fullStyle = node[checkedKey] ? ((node.check_Child_State === 2 || node.check_Child_State === -1) || notEffectByOtherNode ? c.FULL:c.PART) : ((node.check_Child_State < 1 || notEffectByOtherNode)? c.FULL:c.PART);
}
var chkName = setting.check.chkStyle + "_" + (node[checkedKey] ? c.TRUE : c.FALSE) + "_" + fullStyle;
chkName = (node.check_Focus && node.chkDisabled !== true) ? chkName + "_" + c.FOCUS : chkName;

123
src/base/tree/ztree/list/listasynctree.js

@ -0,0 +1,123 @@
/**
* author: windy
* 继承自treeView, 此树的父子节点的勾选状态互不影响, 此树不会有半选节点
* 返回value格式为["A", ["A", "a"]]表示勾选了A且勾选了a
* @class BI.ListListAsyncTree
* @extends BI.TreeView
*/
BI.ListAsyncTree = BI.inherit(BI.ListTreeView, {
_defaultConfig: function () {
return BI.extend(BI.ListAsyncTree.superclass._defaultConfig.apply(this, arguments), {});
},
_init: function () {
BI.ListAsyncTree.superclass._init.apply(this, arguments);
},
// 配置属性
_configSetting: function () {
var paras = this.options.paras;
var self = this;
var setting = {
async: {
enable: false, // 很明显这棵树把异步请求关掉了,所有的异步请求都是手动控制的
otherParam: BI.cjkEncodeDO(paras)
},
check: {
enable: true,
chkboxType: {Y: "", N: ""}
},
data: {
key: {
title: "title",
name: "text"
},
simpleData: {
enable: true
}
},
view: {
showIcon: false,
expandSpeed: "",
nameIsHTML: true,
dblClickExpand: false
},
callback: {
onCheck: onCheck,
beforeExpand: beforeExpand,
beforeCheck: beforeCheck,
onClick: onClick
}
};
function beforeCheck (treeId, treeNode) {
treeNode.half = false;
}
function onClick (event, treeId, treeNode) {
var zTree = $.fn.zTree.getZTreeObj(treeId);
var checked = treeNode.checked;
self._checkValue(treeNode, !checked);
zTree.checkNode(treeNode, !checked, true, true);
}
function beforeExpand (treeId, treeNode) {
self._beforeExpandNode(treeId, treeNode);
}
function onCheck (event, treeId, treeNode) {
self._selectTreeNode(treeId, treeNode);
}
return setting;
},
// 展开节点
_beforeExpandNode: function (treeId, treeNode) {
var self = this, o = this.options;
var parentValues = treeNode.parentValues || self._getParentValues(treeNode);
var op = BI.extend({}, o.paras, {
id: treeNode.id,
times: 1,
parentValues: parentValues.concat(this._getNodeValue(treeNode))
});
var complete = function (d) {
var nodes = d.items || [];
if (nodes.length > 0) {
callback(self._dealWidthNodes(nodes), !!d.hasNext);
}
};
var times = 1;
function callback (nodes, hasNext) {
self.nodes.addNodes(treeNode, nodes);
// 展开节点是没有分页的
if (hasNext === true) {
BI.delay(function () {
times++;
op.times = times;
o.itemsCreator(op, complete);
}, 100);
}
}
if (!treeNode.children) {
setTimeout(function () {
o.itemsCreator(op, complete);
}, 17);
}
},
hasChecked: function () {
return !BI.isEmpty(this.options.paras.selectedValues) || BI.ListAsyncTree.superclass.hasChecked.apply(this, arguments);
},
// 生成树方法
stroke: function (config) {
delete this.options.keyword;
BI.extend(this.options.paras, config);
var setting = this._configSetting();
this._initTree(setting);
}
});
BI.shortcut("bi.list_async_tree", BI.ListAsyncTree);

92
src/base/tree/ztree/list/listparttree.js

@ -0,0 +1,92 @@
/**
* guy
* 局部树两个请求树 第一个请求构造树第二个请求获取节点
* @class BI.ListPartTree
* @extends BI.AsyncTree
*/
BI.ListPartTree = BI.inherit(BI.ListAsyncTree, {
_defaultConfig: function () {
return BI.extend(BI.ListPartTree.superclass._defaultConfig.apply(this, arguments), {});
},
_init: function () {
BI.ListPartTree.superclass._init.apply(this, arguments);
},
_loadMore: function () {
var self = this, o = this.options;
var op = BI.extend({}, o.paras, {
type: BI.TreeView.REQ_TYPE_INIT_DATA,
times: ++this.times
});
this.tip.setLoading();
o.itemsCreator(op, function (d) {
var hasNext = !!d.hasNext, nodes = d.items || [];
o.paras.lastSearchValue = d.lastSearchValue;
if (self._stop === true) {
return;
}
if (!hasNext) {
self.tip.setEnd();
} else {
self.tip.setLoaded();
}
if (nodes.length > 0) {
self.nodes.addNodes(null, self._dealWidthNodes(nodes));
}
});
},
_initTree: function (setting, keyword) {
var self = this, o = this.options;
this.times = 1;
var tree = this.tree;
tree.empty();
self.tip.setVisible(false);
this.loading();
var op = BI.extend({}, o.paras, {
type: BI.TreeView.REQ_TYPE_INIT_DATA,
times: this.times
});
var complete = function (d) {
if (self._stop === true || keyword != o.paras.keyword) {
return;
}
var hasNext = !!d.hasNext, nodes = d.items || [];
o.paras.lastSearchValue = d.lastSearchValue;
// 没有请求到数据也要初始化空树, 如果不初始化, 树就是上一次构造的树, 节点信息都是过期的
callback(nodes.length > 0 ? self._dealWidthNodes(nodes) : []);
self.setTipVisible(nodes.length <= 0);
self.loaded();
if (!hasNext) {
self.tip.invisible();
} else {
self.tip.setLoaded();
}
self.fireEvent(BI.Events.AFTERINIT);
};
function callback (nodes) {
if (self._stop === true) {
return;
}
self.nodes = $.fn.zTree.init(tree.element, setting, nodes);
}
BI.delay(function () {
o.itemsCreator(op, complete);
}, 100);
},
// 生成树方法
stroke: function (config) {
var o = this.options;
delete o.paras.keyword;
BI.extend(o.paras, config);
delete o.paras.lastSearchValue;
var setting = this._configSetting();
this._initTree(setting, o.paras.keyword);
}
});
BI.shortcut("bi.list_part_tree", BI.ListPartTree);

114
src/base/tree/ztree/list/listtreeview.js

@ -0,0 +1,114 @@
/**
* author: windy
* 继承自treeView, 此树的父子节点的勾选状态互不影响, 此树不会有半选节点
* 返回value格式为[["A"], ["A", "a"]]表示勾选了A且勾选了a
* @class BI.ListTreeView
* @extends BI.TreeView
*/
BI.ListTreeView = BI.inherit(BI.TreeView, {
_constants: {
SPLIT: "<|>"
},
_defaultConfig: function () {
return BI.extend(BI.ListTreeView.superclass._defaultConfig.apply(this, arguments), {});
},
_init: function () {
BI.ListTreeView.superclass._init.apply(this, arguments);
var o = this.options;
this.storeValue = o.value || {};
},
// 配置属性
_configSetting: function () {
var paras = this.options.paras;
var self = this;
var setting = {
async: {
enable: false
},
check: {
enable: true,
chkboxType: {Y: "", N: ""}
},
data: {
key: {
title: "title",
name: "text"
},
simpleData: {
enable: true
}
},
view: {
showIcon: false,
expandSpeed: "",
nameIsHTML: true,
dblClickExpand: false
},
callback: {
onCheck: onCheck,
onClick: onClick
}
};
function onClick (event, treeId, treeNode) {
var zTree = $.fn.zTree.getZTreeObj(treeId);
var checked = treeNode.checked;
self._checkValue(treeNode, !checked);
zTree.checkNode(treeNode, !checked, true, true);
}
function onCheck (event, treeId, treeNode) {
self._selectTreeNode(treeId, treeNode);
}
return setting;
},
_selectTreeNode: function (treeId, treeNode) {
this._checkValue(treeNode, treeNode.checked);
BI.ListTreeView.superclass._selectTreeNode.apply(this, arguments);
},
_transArrayToMap: function (treeArrays) {
var self = this;
var map = {};
BI.each(treeArrays, function (idx, array) {
var key = array.join(self._constants.SPLIT);
map[key] = true;
});
return map;
},
_transMapToArray: function (treeMap) {
var self = this;
var array = [];
BI.each(treeMap, function (key) {
var item = key.split(self._constants.SPLIT);
array.push(item);
});
return array;
},
_checkValue: function (treeNode, checked) {
var key = BI.concat(this._getParentValues(treeNode), this._getNodeValue(treeNode)).join(this._constants.SPLIT);
if(checked) {
this.storeValue[key] = true;
} else {
delete this.storeValue[key];
}
},
setSelectedValue: function (value) {
this.options.paras.selectedValues = value || [];
this.storeValue = this._transArrayToMap(value);
},
getValue: function () {
return this._transMapToArray(this.storeValue);
}
});
BI.shortcut("bi.list_tree_view", BI.ListTreeView);

22
src/base/tree/ztree/parttree.js

@ -42,9 +42,17 @@ BI.PartTree = BI.inherit(BI.AsyncTree, {
var parentValues = BI.deepClone(treeNode.parentValues || self._getParentValues(treeNode));
var name = this._getNodeValue(treeNode);
if (treeNode.checked === true) {
BI.AsyncTree.superclass._selectTreeNode.apply(self, arguments);
this._buildTree(self.options.paras.selectedValues, BI.concat(parentValues, name));
o.itemsCreator({
type: BI.TreeView.REQ_TYPE_ADJUST_DATA,
selectedValues: self.options.paras.selectedValues
}, function (res) {
self.options.paras.selectedValues = res;
BI.AsyncTree.superclass._selectTreeNode.apply(self, arguments);
});
} else {
// 如果选中的值中不存在该值不处理
// 因为反正是不选中,没必要管
var t = this.options.paras.selectedValues;
var p = parentValues.concat(name);
for (var i = 0, len = p.length; i < len; i++) {
@ -52,6 +60,7 @@ BI.PartTree = BI.inherit(BI.AsyncTree, {
if (t == null) {
return;
}
// 选中中国-江苏, 搜索南京,取消勾选
if (BI.isEmpty(t)) {
break;
}
@ -115,9 +124,8 @@ BI.PartTree = BI.inherit(BI.AsyncTree, {
}
var hasNext = !!d.hasNext, nodes = d.items || [];
o.paras.lastSearchValue = d.lastSearchValue;
if (nodes.length > 0) {
callback(self._dealWidthNodes(nodes));
}
// 没有请求到数据也要初始化空树, 如果不初始化, 树就是上一次构造的树, 节点信息都是过期的
callback(nodes.length > 0 ? self._dealWidthNodes(nodes) : []);
self.setTipVisible(nodes.length <= 0);
self.loaded();
if (!hasNext) {
@ -143,12 +151,6 @@ BI.PartTree = BI.inherit(BI.AsyncTree, {
getValue: function () {
var o = this.options;
var result = BI.PartTree.superclass.getValue.apply(this, arguments);
o.itemsCreator({
type: BI.TreeView.REQ_TYPE_ADJUST_DATA,
selectedValues: result
}, function (res) {
result = res;
});
return result;
},

27
src/base/tree/ztree/treeview.js

@ -8,7 +8,9 @@ BI.TreeView = BI.inherit(BI.Pane, {
_defaultConfig: function () {
return BI.extend(BI.TreeView.superclass._defaultConfig.apply(this, arguments), {
_baseCls: "bi-tree",
paras: {},
paras: {
selectedValues: {}
},
itemsCreator: BI.emptyFn
});
},
@ -71,8 +73,8 @@ BI.TreeView = BI.inherit(BI.Pane, {
async: {
enable: true,
url: getUrl,
autoParam: ["id", "name"],
otherParam: BI.cjkEncodeDO(paras)
autoParam: ["id", "name"], // 节点展开异步请求自动提交id和name
otherParam: BI.cjkEncodeDO(paras) // 静态参数
},
check: {
enable: true
@ -80,16 +82,16 @@ BI.TreeView = BI.inherit(BI.Pane, {
data: {
key: {
title: "title",
name: "text"
name: "text" // 节点的name属性替换成text
},
simpleData: {
enable: true
enable: true // 可以穿id,pid属性的对象数组
}
},
view: {
showIcon: false,
expandSpeed: "",
nameIsHTML: true,
nameIsHTML: true, // 节点可以用html标签代替
dblClickExpand: false
},
callback: {
@ -112,6 +114,7 @@ BI.TreeView = BI.inherit(BI.Pane, {
if(status.half === true && status.checked === true) {
checked = false;
}
// 更新此node的check状态, 影响父子关联,并调用beforeCheck和onCheck回调
self.nodes.checkNode(treeNode, !checked, true, true);
}
@ -134,7 +137,7 @@ BI.TreeView = BI.inherit(BI.Pane, {
}
return true;
}
BI.Msg.toast("Please Wait。", "warning");
BI.Msg.toast("Please Wait。", "warning"); // 不展开节点,也不触发onExpand事件
return false;
}
@ -172,9 +175,9 @@ BI.TreeView = BI.inherit(BI.Pane, {
function ajaxGetNodes (treeNode, reloadType) {
var zTree = self.nodes;
if (reloadType == "refresh") {
zTree.updateNode(treeNode);
zTree.updateNode(treeNode); // 刷新一下当前节点,如果treeNode.xxx被改了的话
}
zTree.reAsyncChildNodes(treeNode, reloadType, true);
zTree.reAsyncChildNodes(treeNode, reloadType, true); // 强制加载子节点,reloadType === refresh为先清空再加载,否则为追加到现有子节点之后
}
function beforeCheck (treeId, treeNode) {
@ -252,15 +255,18 @@ BI.TreeView = BI.inherit(BI.Pane, {
}
var parent = node.parentValues || self._getParentValues(node);
var path = parent.concat(this._getNodeValue(node));
// 当前节点是全选的,因为上面的判断已经排除了不选和半选
if (BI.isNotEmptyArray(node.children) || checkState.half === false) {
this._buildTree(map, path);
return;
}
// 剩下的就是半选不展开的节点,因为不知道里面是什么情况,所以借助selectedValues(这个是完整的选中情况)
var storeValues = BI.deepClone(this.options.paras.selectedValues);
var treeNode = this._getTree(storeValues, path);
this._addTreeNode(map, parent, this._getNodeValue(node), treeNode);
},
// 获取的是以values最后一个节点为根的子树
_getTree: function (map, values) {
var cur = map;
BI.any(values, function (i, value) {
@ -272,6 +278,7 @@ BI.TreeView = BI.inherit(BI.Pane, {
return cur;
},
// 以values为path一路向里补充map, 并在末尾节点添加key: value节点
_addTreeNode: function (map, values, key, value) {
var cur = map;
BI.each(values, function (i, value) {
@ -299,7 +306,7 @@ BI.TreeView = BI.inherit(BI.Pane, {
var self = this;
var hashMap = {};
var rootNoots = this.nodes.getNodes();
track(rootNoots);
track(rootNoots); // 可以看到这个方法没有递归调用,所以在_getHalfSelectedValues中需要关心全选的节点
function track (nodes) {
BI.each(nodes, function (i, node) {
var checkState = node.getCheckStatus();

2
src/case/calendar/calendar.year.js

@ -59,7 +59,7 @@ BI.YearCalendar = BI.inherit(BI.Widget, {
return BI.map(item, function (j, td) {
return BI.extend(td, {
type: "bi.text_item",
cls: "bi-list-item-active",
cls: "bi-list-item-select",
textAlign: "center",
whiteSpace: "normal",
once: false,

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

@ -77,7 +77,7 @@ BI.SearchTextValueTrigger = BI.inherit(BI.Trigger, {
if (result.length > 0) {
return result.join(",");
} else {
return o.text;
return BI.isFunction(o.text) ? o.text() : o.text;
}
},

4
src/case/editor/editor.clear.js

@ -101,6 +101,9 @@ BI.ClearEditor = BI.inherit(BI.Widget, {
this.editor.on(BI.Editor.EVENT_CONFIRM, function () {
self.fireEvent(BI.ClearEditor.EVENT_CONFIRM);
});
this.editor.on(BI.Editor.EVENT_CHANGE_CONFIRM, function () {
self.fireEvent(BI.ClearEditor.EVENT_CHANGE_CONFIRM);
});
this.editor.on(BI.Editor.EVENT_START, function () {
self.fireEvent(BI.ClearEditor.EVENT_START);
});
@ -165,6 +168,7 @@ BI.ClearEditor.EVENT_START = "EVENT_START";
BI.ClearEditor.EVENT_PAUSE = "EVENT_PAUSE";
BI.ClearEditor.EVENT_STOP = "EVENT_STOP";
BI.ClearEditor.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.ClearEditor.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.ClearEditor.EVENT_VALID = "EVENT_VALID";
BI.ClearEditor.EVENT_ERROR = "EVENT_ERROR";
BI.ClearEditor.EVENT_ENTER = "EVENT_ENTER";

10
src/case/editor/editor.shelter.js

@ -99,6 +99,11 @@ BI.ShelterEditor = BI.inherit(BI.Widget, {
self._checkText();
self.fireEvent(BI.ShelterEditor.EVENT_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_CHANGE_CONFIRM, function () {
self._showHint();
self._checkText();
self.fireEvent(BI.ShelterEditor.EVENT_CHANGE_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_START, function () {
self.fireEvent(BI.ShelterEditor.EVENT_START, arguments);
});
@ -217,6 +222,10 @@ BI.ShelterEditor = BI.inherit(BI.Widget, {
return this.editor.getLastValidValue();
},
getLastChangedValue: function () {
return this.editor.getLastChangedValue();
},
setTextStyle: function (style) {
this.text.setStyle(style);
},
@ -251,6 +260,7 @@ BI.ShelterEditor.EVENT_START = "EVENT_START";
BI.ShelterEditor.EVENT_PAUSE = "EVENT_PAUSE";
BI.ShelterEditor.EVENT_STOP = "EVENT_STOP";
BI.ShelterEditor.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.ShelterEditor.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.ShelterEditor.EVENT_VALID = "EVENT_VALID";
BI.ShelterEditor.EVENT_ERROR = "EVENT_ERROR";
BI.ShelterEditor.EVENT_ENTER = "EVENT_ENTER";

10
src/case/editor/editor.sign.js

@ -101,6 +101,11 @@ BI.SignEditor = BI.inherit(BI.Widget, {
self._checkText();
self.fireEvent(BI.SignEditor.EVENT_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_CHANGE_CONFIRM, function () {
self._showHint();
self._checkText();
self.fireEvent(BI.SignEditor.EVENT_CHANGE_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_START, function () {
self.fireEvent(BI.SignEditor.EVENT_START, arguments);
});
@ -221,6 +226,10 @@ BI.SignEditor = BI.inherit(BI.Widget, {
return this.editor.getLastValidValue();
},
getLastChangedValue: function () {
return this.editor.getLastChangedValue();
},
setValue: function (k) {
this.editor.setValue(k);
this._checkText();
@ -250,6 +259,7 @@ BI.SignEditor.EVENT_START = "EVENT_START";
BI.SignEditor.EVENT_PAUSE = "EVENT_PAUSE";
BI.SignEditor.EVENT_STOP = "EVENT_STOP";
BI.SignEditor.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.SignEditor.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.SignEditor.EVENT_VALID = "EVENT_VALID";
BI.SignEditor.EVENT_ERROR = "EVENT_ERROR";
BI.SignEditor.EVENT_ENTER = "EVENT_ENTER";

9
src/case/editor/editor.state.js

@ -111,6 +111,10 @@ BI.StateEditor = BI.inherit(BI.Widget, {
self._showHint();
self.fireEvent(BI.StateEditor.EVENT_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_CHANGE_CONFIRM, function () {
self._showHint();
self.fireEvent(BI.StateEditor.EVENT_CHANGE_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_START, function () {
self.fireEvent(BI.StateEditor.EVENT_START, arguments);
});
@ -211,6 +215,10 @@ BI.StateEditor = BI.inherit(BI.Widget, {
return this.editor.getLastValidValue();
},
getLastChangedValue: function () {
return this.editor.getLastChangedValue();
},
setValue: function (k) {
this.editor.setValue(k);
},
@ -274,6 +282,7 @@ BI.StateEditor.EVENT_START = "EVENT_START";
BI.StateEditor.EVENT_PAUSE = "EVENT_PAUSE";
BI.StateEditor.EVENT_STOP = "EVENT_STOP";
BI.StateEditor.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.StateEditor.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.StateEditor.EVENT_VALID = "EVENT_VALID";
BI.StateEditor.EVENT_ERROR = "EVENT_ERROR";
BI.StateEditor.EVENT_ENTER = "EVENT_ENTER";

9
src/case/editor/editor.state.simple.js

@ -99,6 +99,10 @@ BI.SimpleStateEditor = BI.inherit(BI.Widget, {
self._showHint();
self.fireEvent(BI.SimpleStateEditor.EVENT_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_CHANGE_CONFIRM, function () {
self._showHint();
self.fireEvent(BI.SimpleStateEditor.EVENT_CHANGE_CONFIRM, arguments);
});
this.editor.on(BI.Editor.EVENT_START, function () {
self.fireEvent(BI.SimpleStateEditor.EVENT_START, arguments);
});
@ -197,6 +201,10 @@ BI.SimpleStateEditor = BI.inherit(BI.Widget, {
return this.editor.getLastValidValue();
},
getLastChangedValue: function () {
return this.editor.getLastChangedValue();
},
setValue: function (k) {
this.editor.setValue(k);
},
@ -248,6 +256,7 @@ BI.SimpleStateEditor.EVENT_START = "EVENT_START";
BI.SimpleStateEditor.EVENT_PAUSE = "EVENT_PAUSE";
BI.SimpleStateEditor.EVENT_STOP = "EVENT_STOP";
BI.SimpleStateEditor.EVENT_CONFIRM = "EVENT_CONFIRM";
BI.SimpleStateEditor.EVENT_CHANGE_CONFIRM = "EVENT_CHANGE_CONFIRM";
BI.SimpleStateEditor.EVENT_VALID = "EVENT_VALID";
BI.SimpleStateEditor.EVENT_ERROR = "EVENT_ERROR";
BI.SimpleStateEditor.EVENT_ENTER = "EVENT_ENTER";

78
src/case/tree/ztree/tree.list.display.js

@ -0,0 +1,78 @@
/**
* guy
* 异步树
* @class BI.ListListDisplayTree
* @extends BI.TreeView
*/
BI.ListDisplayTree = BI.inherit(BI.ListTreeView, {
_defaultConfig: function () {
return BI.extend(BI.ListDisplayTree.superclass._defaultConfig.apply(this, arguments), {
extraCls: "bi-list-display-tree"
});
},
_init: function () {
BI.ListDisplayTree.superclass._init.apply(this, arguments);
},
// 配置属性
_configSetting: function () {
var setting = {
view: {
selectedMulti: false,
dblClickExpand: false,
showIcon: false,
nameIsHTML: true,
showTitle: false,
fontCss: getFont
},
data: {
key: {
title: "title",
name: "text"
},
simpleData: {
enable: true
}
},
callback: {
beforeCollapse: beforeCollapse
}
};
function beforeCollapse(treeId, treeNode) {
return false;
}
function getFont(treeId, node) {
return node.isLeaf ? {} : {color: "#999999"};
}
return setting;
},
_dealWidthNodes: function (nodes) {
nodes = BI.ListDisplayTree.superclass._dealWidthNodes.apply(this, arguments);
var self = this, o = this.options;
BI.each(nodes, function (i, node) {
node.isParent = node.isParent || node.parent;
if (node.text == null) {
if (node.count > 0) {
node.text = node.value + "(" + BI.i18nText("BI-Basic_Altogether") + node.count + BI.i18nText("BI-Basic_Count") + ")";
}
}
});
return nodes;
},
initTree: function (nodes, setting) {
var setting = setting || this._configSetting();
this.nodes = $.fn.zTree.init(this.tree.element, setting, nodes);
},
destroy: function () {
BI.ListDisplayTree.superclass.destroy.apply(this, arguments);
}
});
BI.ListDisplayTree.EVENT_CHANGE = "EVENT_CHANGE";
BI.shortcut("bi.list_display_tree", BI.ListDisplayTree);

2
src/case/trigger/trigger.text.select.js

@ -43,7 +43,7 @@ BI.SelectTextTrigger = BI.inherit(BI.Trigger, {
if (result.length > 0) {
return result.join(",");
} else {
return o.text;
return BI.isFunction(o.text) ? o.text() : o.text;
}
},

48
src/component/treevaluechooser/abstract.treevaluechooser.js

@ -92,10 +92,19 @@ BI.AbstractTreeValueChooser = BI.inherit(BI.Widget, {
}
BI.each(selected, function (k) {
var node = self._getTreeNode(parentValues, k);
var newParents = BI.clone(parentValues);
newParents.push(node.value);
createOneJson(node, node.parent && node.parent.id, getCount(selected[k], newParents));
doCheck(newParents, node, selected[k]);
// 找不到就是新增值
if(BI.isNull(node)) {
createOneJson({
id: BI.UUID(),
text: k,
value: k
}, BI.UUID(), 0);
} else {
var newParents = BI.clone(parentValues);
newParents.push(node.value);
createOneJson(node, node.parent && node.parent.id, getCount(selected[k], newParents));
doCheck(newParents, node, selected[k]);
}
});
}
@ -355,7 +364,7 @@ BI.AbstractTreeValueChooser = BI.inherit(BI.Widget, {
var result = [];
var keyword = op.keyword || "";
var selectedValues = op.selectedValues;
var lastSearchValue = op.lastSearchValue || "";
var lastSearchValue = op.lastSearchValue || ""; // 一次请求100个,但是搜索是拿全部的,lastSearchValue是上一次遍历到的节点索引
var output = search();
BI.nextTick(function () {
callback({
@ -392,6 +401,15 @@ BI.AbstractTreeValueChooser = BI.inherit(BI.Widget, {
break;
}
}
// 深层嵌套的比较麻烦,这边先实现的是在根节点添加
if (op.times === 1) {
var nodes = self._getAddedValueNode([], selectedValues);
result = BI.concat(BI.filter(nodes, function (idx, node) {
var find = BI.Func.getSearchResult([node.text || node.value], keyword);
return find.find.length > 0 || find.match.length > 0;
}), result);
}
return output;
}
@ -521,6 +539,10 @@ BI.AbstractTreeValueChooser = BI.inherit(BI.Widget, {
halfCheck: state[1]
});
}
// 深层嵌套的比较麻烦,这边先实现的是在根节点添加
if (parentValues.length === 0 && times === 1) {
result = BI.concat(self._getAddedValueNode(parentValues, selectedValues), result);
}
BI.nextTick(function () {
callback({
items: result,
@ -587,6 +609,22 @@ BI.AbstractTreeValueChooser = BI.inherit(BI.Widget, {
}
},
_getAddedValueNode: function (parentValues, selectedValues) {
var nodes = this._getChildren(parentValues);
return BI.map(BI.difference(BI.keys(selectedValues), BI.map(nodes, "value")), function (idx, v) {
return {
id: BI.UUID(),
pId: nodes.length > 0 ? nodes[0].pId : BI.UUID(),
value: v,
text: v,
times: 1,
isParent: false,
checked: true,
halfCheck: false
};
});
},
_getNode: function (selectedValues, parentValues) {
var pNode = selectedValues;
for (var i = 0, len = parentValues.length; i < len; i++) {

261
src/component/treevaluechooser/abstract.treevaluechooser.list.js

@ -0,0 +1,261 @@
BI.AbstractListTreeValueChooser = BI.inherit(BI.AbstractTreeValueChooser, {
_reqDisplayTreeNode: function (op, callback) {
var self = this;
var result = {};
var selectedValues = op.selectedValues;
if (selectedValues == null || BI.isEmpty(selectedValues)) {
callback({});
return;
}
doCheck([], this.tree.getRoot(), selectedValues);
callback({
items: BI.values(result)
});
function doCheck(parentValues, node, selected) {
BI.each(selected, function (idx, path) {
BI.each(path, function (id, value) {
var nodeValue = value;
var node = self._getTreeNode(path.slice(0, id), nodeValue);
// 找不到就是新增值
if (BI.isNull(node)) {
createOneJson({
id: BI.UUID(),
text: nodeValue,
value: nodeValue,
isLeaf: true
}, BI.UUID());
} else {
if(!BI.has(result, node.id)) {
createOneJson(node, node.parent && node.parent.id);
}
result[node.id].isLeaf !== true && (result[node.id].isLeaf = id === path.length - 1);
}
});
});
}
function createOneJson(node, pId) {
result[node.id] = {
id: node.id,
pId: pId,
text: node.text,
value: node.value,
open: true,
isLeaf: node.isLeaf
};
}
},
_reqInitTreeNode: function (op, callback) {
var self = this;
var result = [];
var keyword = op.keyword || "";
var selectedValues = op.selectedValues;
var lastSearchValue = op.lastSearchValue || ""; // 一次请求100个,但是搜索是拿全部的,lastSearchValue是上一次遍历到的节点索引
var output = search();
BI.nextTick(function () {
callback({
hasNext: output.length > self._const.perPage,
items: result,
lastSearchValue: BI.last(output)
});
});
function search() {
var children = self._getChildren([]);
var start = children.length;
if (lastSearchValue !== "") {
for (var j = 0, len = start; j < len; j++) {
if (children[j].value === lastSearchValue) {
start = j + 1;
break;
}
}
} else {
start = 0;
}
var output = [];
for (var i = start, len = children.length; i < len; i++) {
if (output.length < self._const.perPage) {
var find = nodeSearch(1, [], children[i].value, result);
} else if (output.length === self._const.perPage) {
var find = nodeSearch(1, [], children[i].value, []);
}
if (find[0] === true) {
output.push(children[i].value);
}
if (output.length > self._const.perPage) {
break;
}
}
// 深层嵌套的比较麻烦,这边先实现的是在根节点添加
if (op.times === 1) {
var nodes = self._getAddedValueNode([], selectedValues);
result = BI.concat(BI.filter(nodes, function (idx, node) {
var find = BI.Func.getSearchResult([node.text || node.value], keyword);
return find.find.length > 0 || find.match.length > 0;
}), result);
}
return output;
}
function nodeSearch(deep, parentValues, current, result) {
if (self._isMatch(parentValues, current, keyword)) {
var checked = isSelected(current);
createOneJson(parentValues, current, false, checked, true, result);
return [true, checked];
}
var newParents = BI.clone(parentValues);
newParents.push(current);
var children = self._getChildren(newParents);
var can = false, checked = false;
BI.each(children, function (i, child) {
var state = nodeSearch(deep + 1, newParents, child.value, result);
if (state[1] === true) {
checked = true;
}
if (state[0] === true) {
can = true;
}
});
if (can === true) {
checked = isSelected(current);
createOneJson(parentValues, current, true, checked, false, result);
}
return [can, checked];
}
function createOneJson(parentValues, value, isOpen, checked, flag, result) {
var node = self._getTreeNode(parentValues, value);
result.push({
id: node.id,
pId: node.pId,
text: node.text,
value: node.value,
title: node.title,
isParent: node.getChildrenLength() > 0,
open: isOpen,
checked: checked,
halfCheck: false,
flag: flag
});
}
function isHalf(parentValues, value) {
var find = findSelectedObj(parentValues);
if (find == null) {
return null;
}
return BI.any(find, function (v, ob) {
if (v === value) {
if (ob != null && !BI.isEmpty(ob)) {
return true;
}
}
});
}
function isAllSelected(parentValues, value) {
var find = findSelectedObj(parentValues);
if (find == null) {
return null;
}
return BI.any(find, function (v, ob) {
if (v === value) {
if (ob != null && BI.isEmpty(ob)) {
return true;
}
}
});
}
function isSelected(value) {
return BI.any(selectedValues, function (idx, array) {
return BI.last(array) === value;
});
}
function findSelectedObj(parentValues) {
var find = selectedValues;
if (find == null) {
return null;
}
BI.every(parentValues, function (i, v) {
find = find[v];
if (find == null) {
return false;
}
return true;
});
return find;
}
},
_reqTreeNode: function (op, callback) {
var self = this;
var result = [];
var times = op.times;
var parentValues = op.parentValues || [];
var selectedValues = op.selectedValues || [];
var valueMap = dealWidthSelectedValue(selectedValues);
var nodes = this._getChildren(parentValues);
for (var i = (times - 1) * this._const.perPage; nodes[i] && i < times * this._const.perPage; i++) {
var checked = BI.has(valueMap, nodes[i].value);
result.push({
id: nodes[i].id,
pId: nodes[i].pId,
value: nodes[i].value,
text: nodes[i].text,
times: 1,
isParent: nodes[i].getChildrenLength() > 0,
checked: checked,
halfCheck: false
});
}
// 深层嵌套的比较麻烦,这边先实现的是在根节点添加
if (parentValues.length === 0 && times === 1) {
result = BI.concat(self._getAddedValueNode(parentValues, selectedValues), result);
}
BI.nextTick(function () {
callback({
items: result,
hasNext: nodes.length > times * self._const.perPage
});
});
function dealWidthSelectedValue(selectedValues) {
var valueMap = {};
BI.each(selectedValues, function (idx, v) {
valueMap[BI.last(v)] = [2, 0];
});
return valueMap;
}
},
_getAddedValueNode: function (parentValues, selectedValues) {
var nodes = this._getChildren(parentValues);
var values = BI.flatten(BI.filter(selectedValues, function (idx, array) {
return array.length === 1;
}));
return BI.map(BI.difference(values, BI.map(nodes, "value")), function (idx, v) {
return {
id: BI.UUID(),
pId: nodes.length > 0 ? nodes[0].pId : BI.UUID(),
value: v,
text: v,
times: 1,
isParent: false,
checked: true,
halfCheck: false
};
});
}
});

54
src/component/treevaluechooser/combo.listtreevaluechooser.js

@ -0,0 +1,54 @@
/**
* 简单的复选下拉树控件, 适用于数据量少的情况, 可以自增值
*
* Created by GUY on 2015/10/29.
* @class BI.ListTreeValueChooserInsertCombo
* @extends BI.Widget
*/
BI.ListTreeValueChooserInsertCombo = BI.inherit(BI.AbstractListTreeValueChooser, {
_defaultConfig: function () {
return BI.extend(BI.ListTreeValueChooserInsertCombo.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-list-tree-value-chooser-insert-combo",
width: 200,
height: 24,
items: null,
itemsCreator: BI.emptyFn
});
},
_init: function () {
BI.ListTreeValueChooserInsertCombo.superclass._init.apply(this, arguments);
var self = this, o = this.options;
if (BI.isNotNull(o.items)) {
this._initData(o.items);
}
this.combo = BI.createWidget({
type: "bi.multi_tree_list_combo",
element: this,
itemsCreator: BI.bind(this._itemsCreator, this),
valueFormatter: BI.bind(this._valueFormatter, this),
width: o.width,
height: o.height
});
this.combo.on(BI.MultiTreeListCombo.EVENT_CONFIRM, function () {
self.fireEvent(BI.ListTreeValueChooserInsertCombo.EVENT_CONFIRM);
});
},
setValue: function (v) {
this.combo.setValue(v);
},
getValue: function () {
return this.combo.getValue();
},
populate: function (items) {
this._initData(items);
this.combo.populate.apply(this.combo, arguments);
}
});
BI.ListTreeValueChooserInsertCombo.EVENT_CONFIRM = "ListTreeValueChooserInsertCombo.EVENT_CONFIRM";
BI.shortcut("bi.list_tree_value_chooser_insert_combo", BI.ListTreeValueChooserInsertCombo);

54
src/component/treevaluechooser/combo.treevaluechooser.insert.js

@ -0,0 +1,54 @@
/**
* 简单的复选下拉树控件, 适用于数据量少的情况, 可以自增值
*
* Created by GUY on 2015/10/29.
* @class BI.TreeValueChooserInsertCombo
* @extends BI.Widget
*/
BI.TreeValueChooserInsertCombo = BI.inherit(BI.AbstractTreeValueChooser, {
_defaultConfig: function () {
return BI.extend(BI.TreeValueChooserInsertCombo.superclass._defaultConfig.apply(this, arguments), {
baseCls: "bi-tree-value-chooser-insert-combo",
width: 200,
height: 24,
items: null,
itemsCreator: BI.emptyFn
});
},
_init: function () {
BI.TreeValueChooserInsertCombo.superclass._init.apply(this, arguments);
var self = this, o = this.options;
if (BI.isNotNull(o.items)) {
this._initData(o.items);
}
this.combo = BI.createWidget({
type: "bi.multi_tree_insert_combo",
element: this,
itemsCreator: BI.bind(this._itemsCreator, this),
valueFormatter: BI.bind(this._valueFormatter, this),
width: o.width,
height: o.height
});
this.combo.on(BI.MultiTreeInsertCombo.EVENT_CONFIRM, function () {
self.fireEvent(BI.TreeValueChooserInsertCombo.EVENT_CONFIRM);
});
},
setValue: function (v) {
this.combo.setValue(v);
},
getValue: function () {
return this.combo.getValue();
},
populate: function (items) {
this._initData(items);
this.combo.populate.apply(this.combo, arguments);
}
});
BI.TreeValueChooserInsertCombo.EVENT_CONFIRM = "TreeValueChooserInsertCombo.EVENT_CONFIRM";
BI.shortcut("bi.tree_value_chooser_insert_combo", BI.TreeValueChooserInsertCombo);

36
src/core/alias.js

@ -353,6 +353,7 @@
return left;
}
BI.cjkEncode = function (text) {
// alex:如果非字符串,返回其本身(cjkEncode(234) 返回 ""是不对的)
if (typeof text !== "string") {
@ -411,21 +412,16 @@
};
// replace the html special tags
var SPECIAL_TAGS = {
"&": "&amp;",
"\"": "&quot;",
"<": "&lt;",
">": "&gt;",
" ": "&nbsp;"
};
BI.htmlEncode = function (text) {
return BI.isNull(text) ? "" : BI.replaceAll(text + "", "&|\"|<|>|\\s", function (v) {
switch (v) {
case "&":
return "&amp;";
case "\"":
return "&quot;";
case "<":
return "&lt;";
case ">":
return "&gt;";
case " ":
default:
return "&nbsp;";
}
return SPECIAL_TAGS[v] ? SPECIAL_TAGS[v] : "&nbsp;";
});
};
// html decode
@ -613,6 +609,20 @@
})(jo);
};
/**
* 获取编码后的url
* @param urlTemplate url模板
* @param param 参数
* @returns {*|String}
* @example
* BI.getEncodeURL("design/{tableName}/{fieldName}",{tableName: "A", fieldName: "a"}) // design/A/a
*/
BI.getEncodeURL = function (urlTemplate, param) {
return urlTemplate.replaceAll("\\{(.*?)\\}", function (ori, str) {
return BI.encodeURIComponent(BI.isObject(param) ? param[str] : param);
});
};
BI.encodeURIComponent = function (url) {
BI.specialCharsMap = BI.specialCharsMap || {};
url = url || "";

4
src/core/base.js

@ -88,8 +88,8 @@ if (!_global.BI) {
},
createItems: function (data, innerAttr, outerAttr) {
innerAttr = BI.isArray(innerAttr) ? innerAttr : BI.makeArray(BI.flatten(data).length, innerAttr);
outerAttr = BI.isArray(outerAttr) ? outerAttr : BI.makeArray(BI.flatten(data).length, outerAttr);
innerAttr = BI.isArray(innerAttr) ? innerAttr : BI.makeArray(BI.flatten(data).length, innerAttr || {});
outerAttr = BI.isArray(outerAttr) ? outerAttr : BI.makeArray(BI.flatten(data).length, outerAttr || {});
return BI.map(data, function (i, item) {
if (BI.isArray(item)) {
return BI.createItems(item, innerAttr, outerAttr);

4
src/core/func/date.js

@ -171,8 +171,8 @@ _.extend(BI, {
s["%H"] = (hr < 10) ? ("0" + hr) : hr; // hour, range 00 to 23 (24h format)
s["%I"] = (ir < 10) ? ("0" + ir) : ir; // hour, range 01 to 12 (12h format)
s["%j"] = (dy < 100) ? ((dy < 10) ? ("00" + dy) : ("0" + dy)) : dy; // day of the year (range 001 to 366)
s["%k"] = hr; // hour, range 0 to 23 (24h format)
s["%l"] = ir; // hour, range 1 to 12 (12h format)
s["%k"] = hr + ""; // hour, range 0 to 23 (24h format)
s["%l"] = ir + ""; // hour, range 1 to 12 (12h format)
s["%X"] = (m < 9) ? ("0" + (1 + m)) : (1 + m); // month, range 01 to 12
s["%x"] = m + 1; // month, range 1 to 12
s["%M"] = (min < 10) ? ("0" + min) : min; // minute, range 00 to 59

22
src/core/platform/web/ajax.js

@ -1,22 +0,0 @@
// BI请求
_.extend(BI, {
ajax: function (option) {
option || (option = {});
var async = option.async;
option.data = BI.cjkEncodeDO(option.data || {});
$.ajax({
url: option.url,
type: "POST",
data: option.data,
async: async,
error: option.error,
complete: function (res, status) {
if (BI.isFunction(option.complete)) {
option.complete(BI.jsonDecode(res.responseText), status);
}
}
});
}
});

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

@ -6,12 +6,12 @@ BI.prepares.push(function () {
// 2、IE或者不支持flex的浏览器下使用inline布局
// 3、在2的情况下如果布局的items大于1的话使用display:table的布局
// 4、在3的情况下如果IE版本低于8使用table标签布局
var _isSupprtFlex;
var _isSupportFlex;
var isSupportFlex = function () {
if (_isSupprtFlex == null) {
_isSupprtFlex = !!(BI.isSupportCss3 && BI.isSupportCss3("flex"));
if (_isSupportFlex == null) {
_isSupportFlex = !!(BI.isSupportCss3 && BI.isSupportCss3("flex"));
}
return _isSupprtFlex;
return _isSupportFlex;
};
BI.Plugin.registerWidget("bi.horizontal", function (ob) {
var isIE = BI.isIE(), supportFlex = isSupportFlex(), isLessIE8 = isIE && BI.getIEVersion() < 8;

32
src/core/platform/web/dom.js

@ -14,7 +14,7 @@
BI.extend(BI.DOM, {
patchProps: function (fromElement, toElement) {
var elemData = BI.Widget._renderEngine._data(fromElement[0]);
var elemData = jQuery._data(fromElement[0]);
var events = elemData.events;
BI.each(events, function (eventKey, event) {
BI.each(event, function (i, handler) {
@ -22,7 +22,7 @@
});
});
var fromChildren = fromElement.children(), toChildren = toElement.children();
if(fromChildren.length !== toChildren.length) {
if (fromChildren.length !== toChildren.length) {
throw new Error("不匹配");
}
BI.each(fromChildren, function (i, child) {
@ -276,14 +276,14 @@
return tempValue;
},
rgba2rgb: function (rgbColour, BGcolor) {
if (BI.isNull(BGcolor)) {
BGcolor = 1;
rgba2rgb: function (rgbColor, bgColor) {
if (BI.isNull(bgColor)) {
bgColor = 1;
}
if (rgbColour.substr(0, 4) != "rgba") {
if (rgbColor.substr(0, 4) != "rgba") {
return "";
}
var rgbValues = rgbColour.match(/\d+(\.\d+)?/g);
var rgbValues = rgbColor.match(/\d+(\.\d+)?/g);
if (rgbValues.length < 4) {
return "";
}
@ -292,9 +292,9 @@
var B = BI.parseFloat(rgbValues[2]);
var A = BI.parseFloat(rgbValues[3]);
return "rgb(" + Math.floor(255 * (BGcolor * (1 - A )) + R * A) + "," +
Math.floor(255 * (BGcolor * (1 - A )) + G * A) + "," +
Math.floor(255 * (BGcolor * (1 - A )) + B * A) + ")";
return "rgb(" + Math.floor(255 * (bgColor * (1 - A)) + R * A) + "," +
Math.floor(255 * (bgColor * (1 - A)) + G * A) + "," +
Math.floor(255 * (bgColor * (1 - A)) + B * A) + ")";
}
});
@ -349,7 +349,8 @@
},
isRightSpaceEnough: function (combo, popup, extraWidth) {
var viewBounds = popup.element.bounds(), windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
var viewBounds = popup.element.bounds(),
windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
return BI.DOM.getRightPosition(combo, popup, extraWidth).left + viewBounds.width <= windowBounds.width;
},
@ -362,7 +363,8 @@
},
isBottomSpaceEnough: function (combo, popup, extraHeight) {
var viewBounds = popup.element.bounds(), windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
var viewBounds = popup.element.bounds(),
windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
return BI.DOM.getBottomPosition(combo, popup, extraHeight).top + viewBounds.height <= windowBounds.height;
},
@ -377,7 +379,8 @@
},
getLeftAlignPosition: function (combo, popup, extraWidth) {
var viewBounds = popup.element.bounds(), windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
var viewBounds = popup.element.bounds(),
windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
var left = combo.element.offset().left + extraWidth;
if (left + viewBounds.width > windowBounds.width) {
left = windowBounds.width - viewBounds.width;
@ -447,7 +450,8 @@
},
getTopAdaptPosition: function (combo, popup, extraHeight, needAdaptHeight) {
var popupBounds = popup.element.bounds(), windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
var popupBounds = popup.element.bounds(),
windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
if (BI.DOM.isTopSpaceEnough(combo, popup, extraHeight)) {
return BI.DOM.getTopPosition(combo, popup, extraHeight);
}

39
src/core/wrapper/layout.js

@ -421,9 +421,22 @@ BI.Layout = BI.inherit(BI.Widget, {
oldEndVnode = oldCh[--oldEndIdx];
newStartVnode = newCh[++newStartIdx];
} else {
var node = addNode(newStartVnode);
insertBefore(node, oldStartVnode);
newStartVnode = newCh[++newStartIdx];
var sameOldVnode = findOldVnode(oldCh, newStartVnode, oldStartIdx, oldEndIdx);
if (BI.isNull(sameOldVnode)) { // 不存在就把新的放到左边
var node = addNode(newStartVnode);
insertBefore(node, oldStartVnode);
newStartVnode = newCh[++newStartIdx];
} else { // 如果新节点在就旧节点区间中存在就复用一下
BI.each(oldCh, function (index, child) {
if (child && sameVnode(child, newStartVnode)) {
updated = self.patchItem(sameOldVnode, newStartVnode, index) || updated;
children[sameOldVnode.key == null ? self._getChildName(index) : sameOldVnode.key] = self._children[self._getChildName(index)];
oldCh[index] = undefined;
insertBefore(sameOldVnode, oldStartVnode);
}
});
newStartVnode = newCh[++newStartIdx];
}
}
}
if (oldStartIdx > oldEndIdx) {
@ -467,9 +480,13 @@ BI.Layout = BI.inherit(BI.Widget, {
function removeVnodes (vnodes, startIdx, endIdx) {
for (; startIdx <= endIdx; ++startIdx) {
var node = self._getOptions(vnodes[startIdx]);
var key = node.key == null ? self._getChildName(startIdx) : node.key;
children[key]._destroy();
var ch = vnodes[startIdx];
if (BI.isNotNull(ch)) {
var node = self._getOptions(ch);
var key = node.key == null ? self._getChildName(startIdx) : node.key;
delete self._children[self._getChildName(key)];
children[key]._destroy();
}
}
}
@ -495,6 +512,16 @@ BI.Layout = BI.inherit(BI.Widget, {
}
}
function findOldVnode (vnodes, vNode, beginIdx, endIdx) {
var i, found;
for (i = beginIdx; i <= endIdx; ++i) {
if (vnodes[i] && sameVnode(vnodes[i], vNode)) {
found = vnodes[i];
}
}
return found;
}
return updated;
},

144
src/css/base/colorchooser/colorpicker/editor.css

@ -1,346 +1,214 @@
.bi-farbtastic .wheel {
background: url('images/1x/background/wheel.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/wheel.png');
_background: none;
}
.bi-farbtastic .overlay {
background: url('images/1x/background/mask.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/mask.png');
_background: none;
}
.bi-farbtastic .marker {
background: url('images/1x/background/marker.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/marker.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.center_open {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.roots_open {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.bottom_open {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.ztree li ul.line {
background: url('images/1x/icon/tree_vertical_line_1.png') repeat-y 1px 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_1.png');
_background: none;
}
.bi-theme-dark .ztree li ul.line {
background: url('images/1x/icon/dark/tree_vertical_line_1.png') repeat-y 1px 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_1.png');
_background: none;
}
.ztree li span.button.chk.checkbox_false_full {
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_full_focus {
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_part {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_part_focus {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_full {
background: url('images/2x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_active.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_full_focus {
background: url('images/2x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_active.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_part {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_part_focus {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_full {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_full_focus {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_part {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
}
.ztree.hack li span.button.chk.checkbox_false_part_focus {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_full {
background: url('images/1x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_active.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_full_focus {
background: url('images/1x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_active.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_part {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_part_focus {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree li span.button.root_open {
background: url('images/1x/icon/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_1.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.root_open {
background: url('images/1x/icon/dark/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_1.png');
_background: none;
}
.ztree li span.button.root_close {
background: url('images/1x/icon/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_1.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.root_close {
background: url('images/1x/icon/dark/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_1.png');
_background: none;
}
.ztree li span.button.roots_open {
background: url('images/1x/icon/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_open {
background: url('images/1x/icon/dark/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_2.png');
_background: none;
}
.ztree li span.button.roots_close {
background: url('images/1x/icon/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_close {
background: url('images/1x/icon/dark/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_2.png');
_background: none;
}
.ztree li span.button.center_open {
background: url('images/1x/icon/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_open {
background: url('images/1x/icon/dark/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_3.png');
_background: none;
}
.ztree li span.button.center_close {
background: url('images/1x/icon/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_close {
background: url('images/1x/icon/dark/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_3.png');
_background: none;
}
.ztree li span.button.bottom_open {
background: url('images/1x/icon/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_open {
background: url('images/1x/icon/dark/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_4.png');
_background: none;
}
.ztree li span.button.bottom_close {
background: url('images/1x/icon/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_close {
background: url('images/1x/icon/dark/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_4.png');
_background: none;
}
.ztree li span.button.roots_docu {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_docu {
background: url('images/1x/icon/dark/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_2.png');
_background: none;
}
.ztree li span.button.center_docu {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_docu {
background: url('images/1x/icon/dark/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_3.png');
_background: none;
}
.ztree li span.button.bottom_docu {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_docu {
background: url('images/1x/icon/dark/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_4.png');
_background: none;
}
.ztree li span.button.ico_loading {
background: url('images/1x/icon/loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/loading.gif');
_background: none;
}
.base-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_1.png') repeat-y 0 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_1.png');
_background: none;
}
.bi-theme-dark .base-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_1.png') repeat-y 0 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_1.png');
_background: none;
}
.first-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-theme-dark .first-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_2.png');
_background: none;
}
.mid-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-theme-dark .mid-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_3.png');
_background: none;
}
.last-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.bi-theme-dark .last-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_4.png');
_background: none;
}
.loading-background {
background: url('images/2x/icon/loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/loading.gif');
background-size: contain;
_background: none;
}
.auto-color-background {
background: url('images/2x/background/auto_color.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color.png');
background-size: contain;
_background: none;
}
.auto-color-normal-background {
background: url('images/2x/background/auto_color_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal.png');
background-size: contain;
_background: none;
}
.auto-color-normal-disabled-background {
background: url('images/2x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal_disable.png');
background-size: contain;
_background: none;
}
.trans-color-background {
background: url('images/2x/background/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_normal.png');
background-size: contain;
_background: none;
}
.trans-color-disabled-background {
background: url('images/2x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_disable.png');
background-size: contain;
_background: none;
}
.auto-color-background.hack {
background: url('images/1x/background/auto_color.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color.png');
_background: none;
}
.auto-color-normal-background.hack {
background: url('images/1x/background/auto_color_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal.png');
_background: none;
}
.auto-color-normal-disabled-background.hack {
background: url('images/1x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal_disable.png');
_background: none;
}
.trans-color-background.hack {
background: url('images/1x/background/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_normal.png');
_background: none;
}
.trans-color-disabled-background.hack {
background: url('images/1x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_disable.png');
_background: none;
}
.bi-color-picker-editor .color-picker-editor-display {
-webkit-border-radius: 2px;
@ -349,23 +217,15 @@
}
.bi-color-picker-editor.disabled .auto-color-normal-background {
background: url('images/2x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal_disable.png');
background-size: contain;
_background: none;
}
.bi-color-picker-editor.disabled .auto-color-normal-background.hack {
background: url('images/1x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal_disable.png');
_background: none;
}
.bi-color-picker-editor.disabled .trans-color-background {
background: url('images/2x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_disable.png');
background-size: contain;
_background: none;
}
.bi-color-picker-editor.disabled .trans-color-background.hack {
background: url('images/1x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_disable.png');
_background: none;
}

2
src/css/base/pane.css

@ -124,8 +124,6 @@
}
.bi-loading-widget.hack {
background: url('images/1x/icon/wave_loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/wave_loading.gif');
_background: none;
}
.bi-loading-widget.hack .animate-rect {
background-color: rgba(54, 133, 242, 0);

0
src/css/base/single/bar/bar.css

2
src/css/base/single/button/item.css

@ -1,6 +1,4 @@
.bi-single-select-icon-text-item:active .b-font:before,
.bi-single-select-icon-text-item.active .b-font:before {
color: #3685f2;
}

0
src/css/base/single/button/listitem.css

5
src/css/base/single/editor/editor.css

@ -1,4 +1,3 @@
.bi-multifile-editor .multifile-editor {
text-align: right;
cursor: pointer;
@ -6,10 +5,6 @@
z-index: 2;
}
.bi-textarea-editor {
overflow: hidden;
overflow-x: hidden;

26
src/css/base/single/input/checkbox.css

@ -21,6 +21,10 @@
transform: rotate(45deg) scale(1) translate(-50%, -50%);
content: '';
}
.bi-checkbox .checkbox-content.hover,
.bi-checkbox .checkbox-content:hover {
border-color: #3685f2;
}
.bi-checkbox.active .checkbox-content,
.bi-checkbox:active .checkbox-content {
border-color: #3685f2;
@ -30,16 +34,34 @@
border-color: #ffffff;
opacity: 1;
}
.bi-checkbox.disabled .checkbox-content {
background-color: #F2F4F7;
border-color: #d0d4da;
}
.bi-checkbox.disabled .checkbox-content:after {
opacity: 0;
}
.bi-checkbox.disabled.active .checkbox-content {
border-color: #e8eaed;
background-color: #d0d4da;
}
.bi-checkbox.disabled.active .checkbox-content:after {
opacity: 1;
}
.bi-theme-dark .bi-checkbox .checkbox-content {
border-color: #9EA6B2;
border-color: #878D9F;
}
.bi-theme-dark .bi-checkbox .checkbox-content.hover,
.bi-theme-dark .bi-checkbox .checkbox-content:hover {
border-color: #3685f2;
}
.bi-theme-dark .bi-checkbox.active .checkbox-content,
.bi-theme-dark .bi-checkbox:active .checkbox-content {
border-color: #3685f2;
}
.bi-theme-dark .bi-checkbox.disabled .checkbox-content {
background-color: #2F3149;
}
.bi-theme-dark .bi-checkbox.disabled.active .checkbox-content {
background-color: #606479;
border-color: #606479;
}

30
src/css/base/single/input/radio.css

@ -7,6 +7,10 @@
.bi-radio .radio-content:after {
content: "";
}
.bi-radio .radio-content.hover,
.bi-radio .radio-content:hover {
border-color: #3685f2;
}
.bi-radio:active .radio-content,
.bi-radio.active .radio-content {
border-color: #3685f2;
@ -29,16 +33,38 @@
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
.bi-radio.disabled .radio-content {
background-color: #F2F4F7;
border-color: #d0d4da;
}
.bi-radio.disabled .radio-content:after {
background-color: transparent;
}
.bi-radio.disabled.active .radio-content {
border-color: #e8eaed;
background-color: #d0d4da;
}
.bi-radio.disabled.active .radio-content:after {
background-color: #ffffff;
}
.bi-theme-dark .bi-radio .radio-content {
border-color: #9EA6B2;
border-color: #878D9F;
}
.bi-theme-dark .bi-radio .radio-content.hover,
.bi-theme-dark .bi-radio .radio-content:hover {
border-color: #3685f2;
}
.bi-theme-dark .bi-radio.active .radio-content,
.bi-theme-dark .bi-radio:active .radio-content {
border-color: #3685f2;
}
.bi-theme-dark .bi-radio.disabled .radio-content {
background-color: #2F3149;
}
.bi-theme-dark .bi-radio.disabled .radio-content.hover,
.bi-theme-dark .bi-radio.disabled .radio-content:hover {
border-color: #878D9F;
}
.bi-theme-dark .bi-radio.disabled.active .radio-content {
background-color: #606479;
border-color: #606479;
}

0
src/css/base/single/single.css

15
src/css/base/tree/tree.css

@ -19,3 +19,18 @@
opacity: 1;
filter: alpha(opacity=100);
}
.bi-list-display-tree .ztree li a,
.bi-list-display-tree .ztree li span {
cursor: default !important;
}
.bi-list-display-tree .ztree li a:hover {
text-decoration: none;
}
.bi-list-display-tree .ztree li a.curSelectedNode {
padding-top: 1px;
border: none;
background-color: inherit;
opacity: 1;
filter: alpha(opacity=100);
}

1
src/css/core/normalize2.css

@ -46,6 +46,5 @@ li {
}
i {
-webkit-font-smoothing: antialiased;
-webkit-text-stroke-width: 0.2px;
-moz-osx-font-smoothing: grayscale;
}

136
src/css/resource/background.css

@ -1,344 +1,212 @@
.bi-farbtastic .wheel {
background: url('images/1x/background/wheel.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/wheel.png');
_background: none;
}
.bi-farbtastic .overlay {
background: url('images/1x/background/mask.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/mask.png');
_background: none;
}
.bi-farbtastic .marker {
background: url('images/1x/background/marker.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/marker.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.center_open {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.roots_open {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-display-tree .ztree li span.button.switch.bottom_open {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.ztree li ul.line {
background: url('images/1x/icon/tree_vertical_line_1.png') repeat-y 1px 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_1.png');
_background: none;
}
.bi-theme-dark .ztree li ul.line {
background: url('images/1x/icon/dark/tree_vertical_line_1.png') repeat-y 1px 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_1.png');
_background: none;
}
.ztree li span.button.chk.checkbox_false_full {
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_full_focus {
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_normal.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_part {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background: url('images/2x/icon/check_box_normal.png') no-repeat center center;
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_false_part_focus {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_full {
background: url('images/2x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_active.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_full_focus {
background: url('images/2x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/check_box_active.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_part {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree li span.button.chk.checkbox_true_part_focus {
background: url('images/2x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/half_selected.png');
background-size: contain;
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_full {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_full_focus {
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_normal.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_false_part {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
background: url('images/1x/icon/check_box_normal.png') no-repeat center center;
}
.ztree.hack li span.button.chk.checkbox_false_part_focus {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_full {
background: url('images/1x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_active.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_full_focus {
background: url('images/1x/icon/check_box_active.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/check_box_active.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_part {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree.hack li span.button.chk.checkbox_true_part_focus {
background: url('images/1x/icon/half_selected.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/half_selected.png');
_background: none;
}
.ztree li span.button.root_open {
background: url('images/1x/icon/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_1.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.root_open {
background: url('images/1x/icon/dark/tree_expand_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_1.png');
_background: none;
}
.ztree li span.button.root_close {
background: url('images/1x/icon/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_1.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.root_close {
background: url('images/1x/icon/dark/tree_collapse_1.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_1.png');
_background: none;
}
.ztree li span.button.roots_open {
background: url('images/1x/icon/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_open {
background: url('images/1x/icon/dark/tree_expand_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_2.png');
_background: none;
}
.ztree li span.button.roots_close {
background: url('images/1x/icon/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_close {
background: url('images/1x/icon/dark/tree_collapse_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_2.png');
_background: none;
}
.ztree li span.button.center_open {
background: url('images/1x/icon/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_open {
background: url('images/1x/icon/dark/tree_expand_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_3.png');
_background: none;
}
.ztree li span.button.center_close {
background: url('images/1x/icon/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_close {
background: url('images/1x/icon/dark/tree_collapse_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_3.png');
_background: none;
}
.ztree li span.button.bottom_open {
background: url('images/1x/icon/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_expand_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_open {
background: url('images/1x/icon/dark/tree_expand_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_expand_4.png');
_background: none;
}
.ztree li span.button.bottom_close {
background: url('images/1x/icon/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_collapse_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_close {
background: url('images/1x/icon/dark/tree_collapse_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_collapse_4.png');
_background: none;
}
.ztree li span.button.roots_docu {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.roots_docu {
background: url('images/1x/icon/dark/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_2.png');
_background: none;
}
.ztree li span.button.center_docu {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.center_docu {
background: url('images/1x/icon/dark/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_3.png');
_background: none;
}
.ztree li span.button.bottom_docu {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.bi-theme-dark .ztree li span.button.bottom_docu {
background: url('images/1x/icon/dark/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_4.png');
_background: none;
}
.ztree li span.button.ico_loading {
background: url('images/1x/icon/loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/loading.gif');
_background: none;
}
.base-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_1.png') repeat-y 0 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_1.png');
_background: none;
}
.bi-theme-dark .base-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_1.png') repeat-y 0 0;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_1.png');
_background: none;
}
.first-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_2.png');
_background: none;
}
.bi-theme-dark .first-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_2.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_2.png');
_background: none;
}
.mid-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_3.png');
_background: none;
}
.bi-theme-dark .mid-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_3.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_3.png');
_background: none;
}
.last-line-conn-background {
background: url('images/1x/icon/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/tree_vertical_line_4.png');
_background: none;
}
.bi-theme-dark .last-line-conn-background {
background: url('images/1x/icon/dark/tree_vertical_line_4.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/icon/dark/tree_vertical_line_4.png');
_background: none;
}
.loading-background {
background: url('images/2x/icon/loading.gif') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/icon/loading.gif');
background-size: contain;
_background: none;
}
.auto-color-background {
background: url('images/2x/background/auto_color.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color.png');
background-size: contain;
_background: none;
}
.auto-color-normal-background {
background: url('images/2x/background/auto_color_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal.png');
background-size: contain;
_background: none;
}
.auto-color-normal-disabled-background {
background: url('images/2x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/auto_color_normal_disable.png');
background-size: contain;
_background: none;
}
.trans-color-background {
background: url('images/2x/background/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_normal.png');
background-size: contain;
_background: none;
}
.trans-color-disabled-background {
background: url('images/2x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/2x/background/trans_disable.png');
background-size: contain;
_background: none;
}
.auto-color-background.hack {
background: url('images/1x/background/auto_color.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color.png');
_background: none;
}
.auto-color-normal-background.hack {
background: url('images/1x/background/auto_color_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal.png');
_background: none;
}
.auto-color-normal-disabled-background.hack {
background: url('images/1x/background/auto_color_normal_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/auto_color_normal_disable.png');
_background: none;
}
.trans-color-background.hack {
background: url('images/1x/background/trans_normal.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_normal.png');
_background: none;
}
.trans-color-disabled-background.hack {
background: url('images/1x/background/trans_disable.png') no-repeat center center;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/1x/background/trans_disable.png');
_background: none;
}

5
src/css/resource/font.css

@ -1,14 +1,13 @@
@font-face {
font-family: 'bi';
font-family: "fineui";
src: url('font/iconfont.eot');
src: url('font/iconfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('font/iconfont.woff') format('woff'), /* chrome、firefox */ url('font/iconfont.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/ url('font/iconfont.svg#svgFontName') format('svg');
/* iOS 4.1- */
}
.b-font {
font-family: "bi";
font-family: 'fineui';
font-style: normal;
-webkit-font-smoothing: antialiased;
-webkit-text-stroke-width: 0.2px;
-moz-osx-font-smoothing: grayscale;
}
.close-font .b-font {

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save