From a18cd23e1c19bfd6452242437472cc8f85e75b3a Mon Sep 17 00:00:00 2001 From: Treecat Date: Fri, 6 Jan 2023 11:12:42 +0800 Subject: [PATCH] =?UTF-8?q?case/button=E6=96=87=E4=BB=B6=E5=A4=B9=20es6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/base/single/button/button.basic.js | 211 +++++++++--------- src/base/single/button/button.node.js | 9 +- .../single/button/buttons/button.image.js | 3 +- src/base/single/button/buttons/button.js | 25 +-- src/base/single/button/buttons/button.text.js | 11 +- src/base/single/button/index.js | 2 +- .../button/listitem/blankiconicontextitem.js | 23 +- .../button/listitem/blankicontexticonitem.js | 21 +- .../button/listitem/blankicontextitem.js | 21 +- .../button/listitem/icontexticonitem.js | 21 +- .../single/button/listitem/icontextitem.js | 21 +- .../single/button/listitem/texticonitem.js | 21 +- src/base/single/button/listitem/textitem.js | 19 +- .../single/button/node/icontexticonnode.js | 17 +- src/base/single/button/node/icontextnode.js | 17 +- src/base/single/button/node/texticonnode.js | 17 +- src/base/single/button/node/textnode.js | 15 +- src/case/button/icon/icon.change.js | 68 +++--- src/case/button/icon/icon.trigger.js | 29 ++- .../button/icon/iconhalf/icon.half.image.js | 23 +- src/case/button/icon/iconhalf/icon.half.js | 36 +-- src/case/button/index.js | 29 +++ src/case/button/item.multiselect.js | 64 +++--- src/case/button/item.singleselect.icontext.js | 60 ++--- src/case/button/item.singleselect.js | 65 +++--- src/case/button/item.singleselect.radio.js | 69 +++--- src/case/button/node/node.arrow.js | 71 +++--- src/case/button/node/node.first.plus.js | 82 ++++--- src/case/button/node/node.icon.arrow.js | 99 ++++---- src/case/button/node/node.last.plus.js | 93 ++++---- src/case/button/node/node.mid.plus.js | 85 +++---- .../button/node/node.multilayer.icon.arrow.js | 88 ++++---- src/case/button/node/node.plus.js | 79 ++++--- src/case/button/node/siwtcher.tree.node.js | 45 ++-- src/case/button/node/treenode.js | 79 ++++--- src/case/button/switch.js | 119 +++++----- .../button/treeitem/item.first.treeleaf.js | 108 ++++----- .../button/treeitem/item.icon.treeleaf.js | 86 +++---- .../button/treeitem/item.last.treeleaf.js | 110 ++++----- src/case/button/treeitem/item.mid.treeleaf.js | 110 ++++----- .../treeitem/item.multilayer.icon.treeleaf.js | 94 ++++---- .../button/treeitem/item.root.treeleaf.js | 78 ++++--- src/case/button/treeitem/item.treetextleaf.js | 68 +++--- src/case/button/treeitem/treeitem.js | 64 +++--- src/case/index.js | 7 + 45 files changed, 1330 insertions(+), 1152 deletions(-) create mode 100644 src/case/button/index.js create mode 100644 src/case/index.js diff --git a/src/base/single/button/button.basic.js b/src/base/single/button/button.basic.js index 9375ec638..f2f09216c 100644 --- a/src/base/single/button/button.basic.js +++ b/src/base/single/button/button.basic.js @@ -1,5 +1,5 @@ -import { Single } from "../0.single" -import { emptyFn, shortcut, extend, isFunction, createWidget, Widget, isObject, Controller } from "../../../core" +import { Single } from "../0.single"; +import { emptyFn, shortcut, extend, isFunction, createWidget, Widget, isObject, Controller } from "../../../core"; /** * guy @@ -10,7 +10,6 @@ import { emptyFn, shortcut, extend, isFunction, createWidget, Widget, isObject, */ @shortcut() export class BasicButton extends Single { - static xtype = "bi.basic_button"; static EVENT_CHANGE = "BasicButton.EVENT_CHANGE"; @@ -19,7 +18,7 @@ export class BasicButton extends Single { const conf = super._defaultConfig(arguments); return extend(conf, { - _baseCls: (conf._baseCls || "") + " bi-basic-button" + (conf.invalid ? "" : " cursor-pointer") + ((BI.isIE() && BI.getIEVersion() < 10) ? " hack" : ""), + _baseCls: `${conf._baseCls || ""} bi-basic-button${conf.invalid ? "" : " cursor-pointer"}${(BI.isIE() && BI.getIEVersion() < 10) ? " hack" : ""}`, // el: {} // 可以通过el来创建button元素 value: "", stopEvent: false, @@ -35,7 +34,7 @@ export class BasicButton extends Single { trigger: null, handler: emptyFn, bubble: null, - debounce: true + debounce: true, }); } @@ -50,7 +49,7 @@ export class BasicButton extends Single { this._createShadow(); } if (opts.level) { - this.element.addClass("button-" + opts.level); + this.element.addClass(`button-${opts.level}`); } } @@ -92,7 +91,7 @@ export class BasicButton extends Single { }], }); } - } + }; this.element.mouseup(() => { if (!this._hover && !o.isShadowShowingOnSelected) { @@ -100,7 +99,7 @@ export class BasicButton extends Single { this.$mask.invisible(); } }); - this.element.on("mouseenter." + this.getName(), (e) => { + this.element.on(`mouseenter.${this.getName()}`, e => { if (this.element.__isMouseInBounds__(e)) { if (this.isEnabled() && !this._hover && (o.isShadowShowingOnSelected || !this.isSelected())) { assertMask(); @@ -108,7 +107,7 @@ export class BasicButton extends Single { } } }); - this.element.on("mousemove." + this.getName(), (e) => { + this.element.on(`mousemove.${this.getName()}`, e => { if (!this.element.__isMouseInBounds__(e)) { if (this.isEnabled() && !this._hover) { assertMask(); @@ -116,7 +115,7 @@ export class BasicButton extends Single { } } }); - this.element.on("mouseleave." + this.getName(), () => { + this.element.on(`mouseleave.${this.getName()}`, () => { if (this.isEnabled() && !this._hover) { assertMask(); this.$mask.invisible(); @@ -139,9 +138,9 @@ export class BasicButton extends Single { } return bubble; - } + }; - const clk = (e) => { + const clk = e => { ev(e); if (!this.isEnabled() || !this.isValid()) { return; @@ -161,7 +160,7 @@ export class BasicButton extends Single { trigger: "", // bubble的提示不需要一直存在在界面上 destroyWhenHide: true, - ref: (_ref) => { + ref: _ref => { this.combo = _ref; }, el: { @@ -171,7 +170,7 @@ export class BasicButton extends Single { popup: { type: "bi.text_bubble_bar_popup_view", text: getBubble(), - ref: (_ref) => { + ref: _ref => { popup = _ref; }, listeners: [{ @@ -187,7 +186,7 @@ export class BasicButton extends Single { }, listeners: [{ eventName: BI.BubbleCombo.EVENT_BEFORE_POPUPVIEW, - action: function () { + action () { popup.populate(getBubble()); }, }], @@ -208,113 +207,113 @@ export class BasicButton extends Single { return; } onClick.apply(this, arguments); - } + }; const triggerArr = (o.trigger || "").split(","); - triggerArr.forEach((trigger) => { + triggerArr.forEach(trigger => { let mouseDown = false; + let selected = false; + let interval; switch (trigger) { - case "mouseup": - hand.mousedown(function () { - mouseDown = true; - }); - hand.mouseup(function (e) { - if (mouseDown === true) { - clk(e); - } - mouseDown = false; - ev(e); - }); - break; - case "mousedown": - // let mouseDown = false; - let selected = false; - hand.mousedown((e) => { + case "mouseup": + hand.mousedown(() => { + mouseDown = true; + }); + hand.mouseup(e => { + if (mouseDown === true) { + clk(e); + } + mouseDown = false; + ev(e); + }); + break; + case "mousedown": + // let mouseDown = false; + hand.mousedown(e => { + // if (e.button === 0) { + Widget._renderEngine.createElement(document).bind(`mouseup.${this.getName()}`, e => { // if (e.button === 0) { - Widget._renderEngine.createElement(document).bind("mouseup." + this.getName(), (e) => { - // if (e.button === 0) { - if (BI.DOM.isExist(this) && !hand.__isMouseInBounds__(e) && mouseDown === true && !selected) { - // self.setSelected(!self.isSelected()); - this._trigger(); - } - mouseDown = false; - Widget._renderEngine.createElement(document).unbind("mouseup." + this.getName()); - // } - }); - if (mouseDown === true) { - return; - } - if (this.isSelected()) { - selected = true; - } else { - clk(e); + if (BI.DOM.isExist(this) && !hand.__isMouseInBounds__(e) && mouseDown === true && !selected) { + // self.setSelected(!self.isSelected()); + this._trigger(); } - mouseDown = true; - ev(e); + mouseDown = false; + Widget._renderEngine.createElement(document).unbind(`mouseup.${this.getName()}`); // } }); - hand.mouseup((e) => { - // if (e.button === 0) { - if (BI.DOM.isExist(this) && mouseDown === true && selected === true) { - clk(e); - } + if (mouseDown === true) { + return; + } + if (this.isSelected()) { + selected = true; + } else { + clk(e); + } + mouseDown = true; + ev(e); + // } + }); + hand.mouseup(e => { + // if (e.button === 0) { + if (BI.DOM.isExist(this) && mouseDown === true && selected === true) { + clk(e); + } + mouseDown = false; + selected = false; + Widget._renderEngine.createElement(document).unbind(`mouseup.${this.getName()}`); + // } + }); + break; + case "dblclick": + hand.dblclick(clk); + break; + case "lclick": + hand.mousedown(e => { + Widget._renderEngine.createElement(document).bind(`mouseup.${this.getName()}`, () => { + interval && clearInterval(interval); + interval = null; mouseDown = false; - selected = false; - Widget._renderEngine.createElement(document).unbind("mouseup." + this.getName()); - // } + Widget._renderEngine.createElement(document).unbind(`mouseup.${this.getName()}`); }); - break; - case "dblclick": - hand.dblclick(clk); - break; - case "lclick": - let interval; - hand.mousedown((e) => { - Widget._renderEngine.createElement(document).bind("mouseup." + this.getName(), () => { - interval && clearInterval(interval); - interval = null; - mouseDown = false; - Widget._renderEngine.createElement(document).unbind("mouseup." + this.getName()); - }); - if (mouseDown === true) { - return; - } - if (!this.isEnabled() || !this.isValid()) { - return; - } - if (this.isOnce() && this.isSelected()) { - return; - } - interval = setInterval(function () { - clk(e) - }, 180); - mouseDown = true; + if (mouseDown === true) { + return; + } + if (!this.isEnabled() || !this.isValid()) { + return; + } + if (this.isOnce() && this.isSelected()) { + return; + } + interval = setInterval(() => { + clk(e); + }, 180); + mouseDown = true; + ev(e); + }); + break; + default: + if (o.stopEvent || o.stopPropagation) { + hand.mousedown(e => { ev(e); }); - break; - default: - if (o.stopEvent || o.stopPropagation) { - hand.mousedown(function (e) { - ev(e); - }); + } + hand.click(clk); + // enter键等同于点击 + o.attributes && o.attributes.zIndex >= 0 && hand.keyup(e => { + if (e.keyCode === BI.KeyCode.ENTER) { + clk(e); } - hand.click(clk); - // enter键等同于点击 - o.attributes && o.attributes.zIndex >= 0 && hand.keyup(function (e) { - if (e.keyCode === BI.KeyCode.ENTER) { - clk(e); - } - }); - break; + }); + break; } }); // 之后的300ms点击无效 - let onClick = o.debounce ? BI.debounce(this._doClick, BI.EVENT_RESPONSE_TIME, { - "leading": true, - "trailing": false, + const onClick = o.debounce ? BI.debounce(this._doClick, BI.EVENT_RESPONSE_TIME, { + leading: true, + trailing: false, }) : this._doClick; function ev(e) { @@ -325,10 +324,6 @@ export class BasicButton extends Single { e.stopPropagation(); } } - - - - } _trigger(e) { @@ -458,7 +453,7 @@ export class BasicButton extends Single { } empty() { - Widget._renderEngine.createElement(document).unbind("mouseup." + this.getName()); + Widget._renderEngine.createElement(document).unbind(`mouseup.${this.getName()}`); super.empty.apply(this, arguments); } } diff --git a/src/base/single/button/button.node.js b/src/base/single/button/button.node.js index 6b2988eb3..7b8cc4632 100644 --- a/src/base/single/button/button.node.js +++ b/src/base/single/button/button.node.js @@ -1,5 +1,5 @@ -import { BasicButton } from "./button.basic" -import { shortcut, extend, Controller } from "../../../core" +import { BasicButton } from "./button.basic"; +import { shortcut, extend, Controller } from "../../../core"; /** * 表示一个可以展开的节点, 不仅有选中状态而且有展开状态 @@ -11,14 +11,13 @@ import { shortcut, extend, Controller } from "../../../core" */ @shortcut() export class NodeButton extends BasicButton { - static xtype = "bi.node_button"; _defaultConfig() { const conf = super._defaultConfig(arguments); return extend(conf, { - _baseCls: (conf._baseCls || "") + " bi-node", + _baseCls: `${conf._baseCls || ""} bi-node`, open: false, once: false, }); @@ -57,4 +56,4 @@ export class NodeButton extends BasicButton { this.fireEvent(Controller.EVENT_CHANGE, BI.Events.EXPAND, this.getValue(), this); } } -} \ No newline at end of file +} diff --git a/src/base/single/button/buttons/button.image.js b/src/base/single/button/buttons/button.image.js index 290313fb2..c6486e359 100644 --- a/src/base/single/button/buttons/button.image.js +++ b/src/base/single/button/buttons/button.image.js @@ -11,7 +11,6 @@ import { shortcut, extend, isNumber, createWidget } from "../../../../core"; */ @shortcut() export class ImageButton extends BasicButton { - static EVENT_CHANGE = "EVENT_CHANGE"; static xtype = "bi.image_button"; @@ -19,7 +18,7 @@ export class ImageButton extends BasicButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-image-button", + baseCls: `${conf.baseCls || ""} bi-image-button`, src: "", iconWidth: "100%", iconHeight: "100%", diff --git a/src/base/single/button/buttons/button.js b/src/base/single/button/buttons/button.js index 567e115f9..674400853 100644 --- a/src/base/single/button/buttons/button.js +++ b/src/base/single/button/buttons/button.js @@ -17,7 +17,6 @@ const loadingCls = "button-loading-font anim-rotate"; */ @shortcut() export class Button extends BasicButton { - _const = { iconWidth: 18, } @@ -33,16 +32,16 @@ export class Button extends BasicButton { // 图标高度和文字高度默认相等 adaptiveHeight += (props.textHeight || 16) * 2; adaptiveHeight += props.iconGap || 0; - let tGap = props.tgap || props.vgap || 2; - let bGap = props.bgap || props.vgap || 2; + const tGap = props.tgap || props.vgap || 2; + const bGap = props.bgap || props.vgap || 2; adaptiveHeight += (tGap + bGap); } - let clearMinWidth = props.block === true || props.clear === true || props.plain; + const clearMinWidth = props.block === true || props.clear === true || props.plain; return { ...conf, - baseCls: (conf.baseCls || "") + " bi-button" + ((BI.isIE() && BI.isIE9Below()) ? " hack" : ""), + baseCls: `${conf.baseCls || ""} bi-button${(BI.isIE() && BI.isIE9Below()) ? " hack" : ""}`, attributes: { tabIndex: 1, }, @@ -72,7 +71,7 @@ export class Button extends BasicButton { icon: "", iconGap: 0, iconPosition: "left", - } + }; } render() { @@ -83,7 +82,7 @@ export class Button extends BasicButton { type: "bi.center_adapt", horizontalAlign: o.textAlign, element: this, - ref: (ref) => { + ref: ref => { this.containerRef = ref; }, hgap: o.hgap, @@ -97,7 +96,7 @@ export class Button extends BasicButton { if (BI.get(o, clz) === true) { this.element.addClass(clz); } - }) + }); if (o.minWidth > 0) { this.element.css({ "min-width": BI.pixFormat(o.minWidth) }); @@ -139,7 +138,7 @@ export class Button extends BasicButton { text: o.text, whiteSpace: o.whiteSpace, textAlign: o.textAlign, - textWidth: textWidth, + textWidth, textHeight: BI.toPix(textHeight, hasBorder ? 2 : 0), height: BI.toPix(lineHeight, hasBorder ? 2 : 0), value: o.value, @@ -258,19 +257,19 @@ export class Button extends BasicButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } doHighLight() { - this.text.doHighLight.apply(this.text, arguments); + this.text.doHighLight(...arguments); } unHighLight() { - this.text.unHighLight.apply(this.text, arguments); + this.text.unHighLight(...arguments); } } diff --git a/src/base/single/button/buttons/button.text.js b/src/base/single/button/buttons/button.text.js index a7fed2d76..281047b55 100644 --- a/src/base/single/button/buttons/button.text.js +++ b/src/base/single/button/buttons/button.text.js @@ -10,7 +10,6 @@ import { shortcut, extend, createWidget } from "../../../../core"; */ @shortcut() export class TextButton extends BasicButton { - static xtype = "bi.text_button"; static EVENT_CHANGE = "EVENT_CHANGE"; @@ -18,7 +17,7 @@ export class TextButton extends BasicButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-text-button", + baseCls: `${conf.baseCls || ""} bi-text-button`, textAlign: "center", whiteSpace: "nowrap", textWidth: null, @@ -61,19 +60,19 @@ export class TextButton extends BasicButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } doHighLight() { - this.text.doHighLight.apply(this.text, arguments); + this.text.doHighLight(...arguments); } unHighLight() { - this.text.unHighLight.apply(this.text, arguments); + this.text.unHighLight(...arguments); } setText(text) { diff --git a/src/base/single/button/index.js b/src/base/single/button/index.js index b483234a0..691aa85f7 100644 --- a/src/base/single/button/index.js +++ b/src/base/single/button/index.js @@ -14,4 +14,4 @@ export { TextItem } from "./listitem/textitem"; export { IconTextIconNode } from "./node/icontexticonnode"; export { IconTextNode } from "./node/icontextnode"; export { TextIconNode } from "./node/texticonnode"; -export { TextNode } from "./node/textnode"; \ No newline at end of file +export { TextNode } from "./node/textnode"; diff --git a/src/base/single/button/listitem/blankiconicontextitem.js b/src/base/single/button/listitem/blankiconicontextitem.js index b826fb558..2a471e7b7 100644 --- a/src/base/single/button/listitem/blankiconicontextitem.js +++ b/src/base/single/button/listitem/blankiconicontextitem.js @@ -1,5 +1,5 @@ -import { BasicButton } from "../button.basic" -import { emptyFn, shortcut } from "../../../../core" +import { BasicButton } from "../button.basic"; +import { shortcut } from "../../../../core"; /** * 带有一个占位 @@ -10,15 +10,14 @@ import { emptyFn, shortcut } from "../../../../core" */ @shortcut() export class BlankIconIconTextItem extends BasicButton { - static EVENT_CHANGE = "EVENT_CHANGE"; static xtype = "bi.blank_icon_icon_text_item"; _defaultConfig() { - var conf = super._defaultConfig(arguments); + const conf = super._defaultConfig(arguments); return BI.extend(conf, { - baseCls: (conf.baseCls || "") + " bi-blank-icon-icon-text-item", + baseCls: `${conf.baseCls || ""} bi-blank-icon-icon-text-item`, iconCls1: "", iconCls2: "", blankWidth: 0, @@ -57,7 +56,7 @@ export class BlankIconIconTextItem extends BasicButton { }, { el: { type: "bi.label", - ref: (_ref) => { + ref: _ref => { this.text = _ref; }, textAlign: "left", @@ -89,7 +88,7 @@ export class BlankIconIconTextItem extends BasicButton { setValue() { if (!this.isReadOnly()) { - this.text.setValue.apply(this.text, arguments); + this.text.setValue(...arguments); } } @@ -98,7 +97,7 @@ export class BlankIconIconTextItem extends BasicButton { } setText() { - this.text.setText.apply(this.text, arguments); + this.text.setText(...arguments); } getText() { @@ -106,18 +105,18 @@ export class BlankIconIconTextItem extends BasicButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } doHighLight() { - this.text.doHighLight.apply(this.text, arguments); + this.text.doHighLight(...arguments); } unHighLight() { - this.text.unHighLight.apply(this.text, arguments); + this.text.unHighLight(...arguments); } } diff --git a/src/base/single/button/listitem/blankicontexticonitem.js b/src/base/single/button/listitem/blankicontexticonitem.js index 91b7bcbe2..217906da8 100644 --- a/src/base/single/button/listitem/blankicontexticonitem.js +++ b/src/base/single/button/listitem/blankicontexticonitem.js @@ -1,5 +1,5 @@ -import { BasicButton } from "../button.basic" -import { emptyFn, shortcut, extend } from "../../../../core" +import { BasicButton } from "../button.basic"; +import { shortcut, extend } from "../../../../core"; /** * guy @@ -11,7 +11,6 @@ import { emptyFn, shortcut, extend } from "../../../../core" */ @shortcut() export class BlankIconTextIconItem extends BasicButton { - static xtype = "bi.blank_icon_text_icon_item"; static EVENT_CHANGE = "EVENT_CHANGE"; @@ -19,7 +18,7 @@ export class BlankIconTextIconItem extends BasicButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-blank-icon-text-icon-item", + baseCls: `${conf.baseCls || ""} bi-blank-icon-text-icon-item`, iconCls1: "", iconCls2: "", blankWidth: 0, @@ -51,7 +50,7 @@ export class BlankIconTextIconItem extends BasicButton { }, { el: { type: "bi.label", - ref: (_ref) => { + ref: _ref => { this.text = _ref; }, textAlign: "left", @@ -83,24 +82,24 @@ export class BlankIconTextIconItem extends BasicButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } doHighLight() { - this.text.doHighLight.apply(this.text, arguments); + this.text.doHighLight(...arguments); } unHighLight() { - this.text.unHighLight.apply(this.text, arguments); + this.text.unHighLight(...arguments); } setValue() { if (!this.isReadOnly()) { - this.text.setValue.apply(this.text, arguments); + this.text.setValue(...arguments); } } @@ -109,7 +108,7 @@ export class BlankIconTextIconItem extends BasicButton { } setText() { - this.text.setText.apply(this.text, arguments); + this.text.setText(...arguments); } getText() { diff --git a/src/base/single/button/listitem/blankicontextitem.js b/src/base/single/button/listitem/blankicontextitem.js index fb63eb8fb..fd2b34d32 100644 --- a/src/base/single/button/listitem/blankicontextitem.js +++ b/src/base/single/button/listitem/blankicontextitem.js @@ -1,5 +1,5 @@ -import { BasicButton } from "../button.basic" -import { extend, shortcut } from "../../../../core" +import { BasicButton } from "../button.basic"; +import { extend, shortcut } from "../../../../core"; /** * 带有一个占位 @@ -10,7 +10,6 @@ import { extend, shortcut } from "../../../../core" */ @shortcut() export class BlankIconTextItem extends BasicButton { - static xtype = "bi.blank_icon_text_item"; static EVENT_CHANGE = "EVENT_CHANGE"; @@ -18,7 +17,7 @@ export class BlankIconTextItem extends BasicButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-blank-icon-text-item", + baseCls: `${conf.baseCls || ""} bi-blank-icon-text-item`, blankWidth: 0, iconHeight: null, iconWidth: null, @@ -49,7 +48,7 @@ export class BlankIconTextItem extends BasicButton { }, { el: { type: "bi.label", - ref: (_ref) => { + ref: _ref => { this.text = _ref; }, cls: "list-item-text", @@ -76,7 +75,7 @@ export class BlankIconTextItem extends BasicButton { setValue() { if (!this.isReadOnly()) { - this.text.setValue.apply(this.text, arguments); + this.text.setValue(...arguments); } } @@ -85,7 +84,7 @@ export class BlankIconTextItem extends BasicButton { } setText() { - this.text.setText.apply(this.text, arguments); + this.text.setText(...arguments); } getText() { @@ -93,18 +92,18 @@ export class BlankIconTextItem extends BasicButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } doHighLight() { - this.text.doHighLight.apply(this.text, arguments); + this.text.doHighLight(...arguments); } unHighLight() { - this.text.unHighLight.apply(this.text, arguments); + this.text.unHighLight(...arguments); } } diff --git a/src/base/single/button/listitem/icontexticonitem.js b/src/base/single/button/listitem/icontexticonitem.js index 8aadfdd47..1209e8054 100644 --- a/src/base/single/button/listitem/icontexticonitem.js +++ b/src/base/single/button/listitem/icontexticonitem.js @@ -1,5 +1,5 @@ -import { BasicButton } from "../button.basic" -import { extend, shortcut } from "../../../../core" +import { BasicButton } from "../button.basic"; +import { extend, shortcut } from "../../../../core"; /** * guy @@ -12,7 +12,6 @@ import { extend, shortcut } from "../../../../core" @shortcut() export class IconTextIconItem extends BasicButton { - static EVENT_CHANGE = "EVENT_CHANGE"; static xtype = "bi.icon_text_icon_item"; @@ -20,7 +19,7 @@ export class IconTextIconItem extends BasicButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-icon-text-icon-item", + baseCls: `${conf.baseCls || ""} bi-icon-text-icon-item`, iconCls1: "", iconCls2: "", iconHeight: null, @@ -48,7 +47,7 @@ export class IconTextIconItem extends BasicButton { }, { el: { type: "bi.label", - ref: (_ref) => { + ref: _ref => { this.text = _ref; }, textAlign: "left", @@ -80,24 +79,24 @@ export class IconTextIconItem extends BasicButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } doHighLight() { - this.text.doHighLight.apply(this.text, arguments); + this.text.doHighLight(...arguments); } unHighLight() { - this.text.unHighLight.apply(this.text, arguments); + this.text.unHighLight(...arguments); } setValue() { if (!this.isReadOnly()) { - this.text.setValue.apply(this.text, arguments); + this.text.setValue(...arguments); } } @@ -106,7 +105,7 @@ export class IconTextIconItem extends BasicButton { } setText() { - this.text.setText.apply(this.text, arguments); + this.text.setText(...arguments); } getText() { diff --git a/src/base/single/button/listitem/icontextitem.js b/src/base/single/button/listitem/icontextitem.js index 7aa02bdb3..70ce49654 100644 --- a/src/base/single/button/listitem/icontextitem.js +++ b/src/base/single/button/listitem/icontextitem.js @@ -1,5 +1,5 @@ -import { BasicButton } from "../button.basic" -import { extend, shortcut } from "../../../../core" +import { BasicButton } from "../button.basic"; +import { extend, shortcut } from "../../../../core"; /** * guy @@ -10,7 +10,6 @@ import { extend, shortcut } from "../../../../core" */ @shortcut() export class IconTextItem extends BasicButton { - static EVENT_CHANGE = "EVENT_CHANGE"; static xtype = "bi.icon_text_item"; @@ -18,7 +17,7 @@ export class IconTextItem extends BasicButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-icon-text-item", + baseCls: `${conf.baseCls || ""} bi-icon-text-item`, direction: BI.Direction.Left, iconWrapperWidth: null, iconHeight: null, @@ -47,7 +46,7 @@ export class IconTextItem extends BasicButton { }, { el: { type: "bi.label", - ref: (_ref) => { + ref: _ref => { this.text = _ref; }, cls: "list-item-text", @@ -74,7 +73,7 @@ export class IconTextItem extends BasicButton { setValue() { if (!this.isReadOnly()) { - this.text.setValue.apply(this.text, arguments); + this.text.setValue(...arguments); } } @@ -83,7 +82,7 @@ export class IconTextItem extends BasicButton { } setText() { - this.text.setText.apply(this.text, arguments); + this.text.setText(...arguments); } getText() { @@ -91,18 +90,18 @@ export class IconTextItem extends BasicButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } doHighLight() { - this.text.doHighLight.apply(this.text, arguments); + this.text.doHighLight(...arguments); } unHighLight() { - this.text.unHighLight.apply(this.text, arguments); + this.text.unHighLight(...arguments); } } diff --git a/src/base/single/button/listitem/texticonitem.js b/src/base/single/button/listitem/texticonitem.js index a8b8077fd..db9b30478 100644 --- a/src/base/single/button/listitem/texticonitem.js +++ b/src/base/single/button/listitem/texticonitem.js @@ -1,5 +1,5 @@ -import { BasicButton } from "../button.basic" -import { extend, shortcut } from "../../../../core" +import { BasicButton } from "../button.basic"; +import { extend, shortcut } from "../../../../core"; /** * @@ -11,7 +11,6 @@ import { extend, shortcut } from "../../../../core" */ @shortcut() export class TextIconItem extends BasicButton { - static xtype = "bi.text_icon_item"; static EVENT_CHANGE = "EVENT_CHANGE" @@ -19,7 +18,7 @@ export class TextIconItem extends BasicButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-text-icon-item", + baseCls: `${conf.baseCls || ""} bi-text-icon-item`, iconWrapperWidth: null, iconHeight: null, iconWidth: null, @@ -40,7 +39,7 @@ export class TextIconItem extends BasicButton { items: [{ el: { type: "bi.label", - ref: function (_ref) { + ref (_ref) { self.text = _ref; }, cls: "list-item-text", @@ -74,7 +73,7 @@ export class TextIconItem extends BasicButton { setValue() { if (!this.isReadOnly()) { - this.text.setValue.apply(this.text, arguments); + this.text.setValue(...arguments); } } @@ -83,7 +82,7 @@ export class TextIconItem extends BasicButton { } setText() { - this.text.setText.apply(this.text, arguments); + this.text.setText(...arguments); } getText() { @@ -91,18 +90,18 @@ export class TextIconItem extends BasicButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } doHighLight() { - this.text.doHighLight.apply(this.text, arguments); + this.text.doHighLight(...arguments); } unHighLight() { - this.text.unHighLight.apply(this.text, arguments); + this.text.unHighLight(...arguments); } } diff --git a/src/base/single/button/listitem/textitem.js b/src/base/single/button/listitem/textitem.js index 82fa1e7ea..a1bb719b5 100644 --- a/src/base/single/button/listitem/textitem.js +++ b/src/base/single/button/listitem/textitem.js @@ -1,5 +1,5 @@ -import { BasicButton } from "../button.basic" -import { extend, shortcut } from "../../../../core" +import { BasicButton } from "../button.basic"; +import { extend, shortcut } from "../../../../core"; /** * guy @@ -11,7 +11,6 @@ import { extend, shortcut } from "../../../../core" */ @shortcut export class TextItem extends BasicButton { - static xtype = "bi.text_item"; static EVENT_CHANGE = "EVENT_CHANGE"; @@ -19,7 +18,7 @@ export class TextItem extends BasicButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-text-item", + baseCls: `${conf.baseCls || ""} bi-text-item`, textAlign: "left", whiteSpace: "nowrap", textHgap: 0, @@ -57,24 +56,24 @@ export class TextItem extends BasicButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } doHighLight() { - this.text.doHighLight.apply(this.text, arguments); + this.text.doHighLight(...arguments); } unHighLight() { - this.text.unHighLight.apply(this.text, arguments); + this.text.unHighLight(...arguments); } setValue() { if (!this.isReadOnly()) { - this.text.setValue.apply(this.text, arguments); + this.text.setValue(...arguments); } } @@ -83,7 +82,7 @@ export class TextItem extends BasicButton { } setText() { - this.text.setText.apply(this.text, arguments); + this.text.setText(...arguments); } getText() { diff --git a/src/base/single/button/node/icontexticonnode.js b/src/base/single/button/node/icontexticonnode.js index 7cbff7f74..a08b63c8d 100644 --- a/src/base/single/button/node/icontexticonnode.js +++ b/src/base/single/button/node/icontexticonnode.js @@ -1,5 +1,5 @@ -import { NodeButton } from "../button.node" -import { extend, shortcut } from "../../../../core" +import { NodeButton } from "../button.node"; +import { extend, shortcut } from "../../../../core"; /** * guy @@ -9,7 +9,6 @@ import { extend, shortcut } from "../../../../core" */ @shortcut() export class IconTextIconNode extends NodeButton { - static xtype = "bi.icon_text_icon_node"; static EVENT_CHANGE = "EVENT_CHANGE"; @@ -17,7 +16,7 @@ export class IconTextIconNode extends NodeButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-icon-text-icon-node", + baseCls: `${conf.baseCls || ""} bi-icon-text-icon-node`, iconCls1: "close-ha-font", iconCls2: "close-ha-font", iconHeight: null, @@ -45,7 +44,7 @@ export class IconTextIconNode extends NodeButton { }, { el: { type: "bi.label", - ref: (_ref) => { + ref: _ref => { this.text = _ref; }, textAlign: "left", @@ -77,16 +76,16 @@ export class IconTextIconNode extends NodeButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } setValue() { if (!this.isReadOnly()) { - this.text.setValue.apply(this.text, arguments); + this.text.setValue(...arguments); } } @@ -95,7 +94,7 @@ export class IconTextIconNode extends NodeButton { } setText() { - this.text.setText.apply(this.text, arguments); + this.text.setText(...arguments); } getText() { diff --git a/src/base/single/button/node/icontextnode.js b/src/base/single/button/node/icontextnode.js index 6a6260432..5135030db 100644 --- a/src/base/single/button/node/icontextnode.js +++ b/src/base/single/button/node/icontextnode.js @@ -1,5 +1,5 @@ -import { NodeButton } from "../button.node" -import { extend, shortcut } from "../../../../core" +import { NodeButton } from "../button.node"; +import { extend, shortcut } from "../../../../core"; /** * guy @@ -9,7 +9,6 @@ import { extend, shortcut } from "../../../../core" */ @shortcut() export class IconTextNode extends NodeButton { - static EVENT_CHANGE = "EVENT_CHANGE"; static xtype = "bi.icon_text_node"; @@ -17,7 +16,7 @@ export class IconTextNode extends NodeButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-icon-text-node", + baseCls: `${conf.baseCls || ""} bi-icon-text-node`, cls: "close-ha-font", iconHeight: null, iconWidth: null, @@ -44,7 +43,7 @@ export class IconTextNode extends NodeButton { }, { el: { type: "bi.label", - ref: (_ref) => { + ref: _ref => { this.text = _ref; }, cls: "list-item-text", @@ -71,7 +70,7 @@ export class IconTextNode extends NodeButton { setValue() { if (!this.isReadOnly()) { - this.text.setValue.apply(this.text, arguments); + this.text.setValue(...arguments); } } @@ -80,7 +79,7 @@ export class IconTextNode extends NodeButton { } setText() { - this.text.setText.apply(this.text, arguments); + this.text.setText(...arguments); } getText() { @@ -88,11 +87,11 @@ export class IconTextNode extends NodeButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } } diff --git a/src/base/single/button/node/texticonnode.js b/src/base/single/button/node/texticonnode.js index 02a205047..cc3f2dea8 100644 --- a/src/base/single/button/node/texticonnode.js +++ b/src/base/single/button/node/texticonnode.js @@ -1,5 +1,5 @@ -import { NodeButton } from "../button.node" -import { extend, shortcut } from "../../../../core" +import { NodeButton } from "../button.node"; +import { extend, shortcut } from "../../../../core"; /** * Created by GUY on 2015/9/9. @@ -8,7 +8,6 @@ import { extend, shortcut } from "../../../../core" */ @shortcut() export default class TextIconNode extends NodeButton { - static EVENT_CHANGE = "EVENT_CHANGE"; static xtype = "bi.text_icon_node"; @@ -16,7 +15,7 @@ export default class TextIconNode extends NodeButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-text-icon-node", + baseCls: `${conf.baseCls || ""} bi-text-icon-node`, cls: "close-ha-font", iconHeight: null, iconWidth: null, @@ -36,7 +35,7 @@ export default class TextIconNode extends NodeButton { items: [{ el: { type: "bi.label", - ref: (_ref) => { + ref: _ref => { this.text = _ref; }, cls: "list-item-text", @@ -70,7 +69,7 @@ export default class TextIconNode extends NodeButton { setValue() { if (!this.isReadOnly()) { - this.text.setValue.apply(this.text, arguments); + this.text.setValue(...arguments); } } @@ -79,7 +78,7 @@ export default class TextIconNode extends NodeButton { } setText() { - this.text.setText.apply(this.text, arguments); + this.text.setText(...arguments); } getText() { @@ -87,10 +86,10 @@ export default class TextIconNode extends NodeButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } } diff --git a/src/base/single/button/node/textnode.js b/src/base/single/button/node/textnode.js index 80aadb0d3..e6e990cf7 100644 --- a/src/base/single/button/node/textnode.js +++ b/src/base/single/button/node/textnode.js @@ -1,5 +1,5 @@ -import { NodeButton } from "../button.node" -import { extend, shortcut } from "../../../../core" +import { NodeButton } from "../button.node"; +import { extend, shortcut } from "../../../../core"; /** * guy @@ -10,7 +10,6 @@ import { extend, shortcut } from "../../../../core" */ @shortcut() export class TextNode extends NodeButton { - static xtype = "bi.text_node" static EVENT_CHANGE = "EVENT_CHANGE" @@ -20,7 +19,7 @@ export class TextNode extends NodeButton { const conf = super._defaultConfig(arguments); return extend(conf, { - baseCls: (conf.baseCls || "") + " bi-text-node", + baseCls: `${conf.baseCls || ""} bi-text-node`, textAlign: "left", whiteSpace: "nowrap", textHgap: 0, @@ -58,16 +57,16 @@ export class TextNode extends NodeButton { } doRedMark() { - this.text.doRedMark.apply(this.text, arguments); + this.text.doRedMark(...arguments); } unRedMark() { - this.text.unRedMark.apply(this.text, arguments); + this.text.unRedMark(...arguments); } setValue() { if (!this.isReadOnly()) { - this.text.setValue.apply(this.text, arguments); + this.text.setValue(...arguments); } } @@ -76,7 +75,7 @@ export class TextNode extends NodeButton { } setText() { - this.text.setText.apply(this.text, arguments); + this.text.setText(...arguments); } getText() { diff --git a/src/case/button/icon/icon.change.js b/src/case/button/icon/icon.change.js index e65160879..3e5ad6c46 100644 --- a/src/case/button/icon/icon.change.js +++ b/src/case/button/icon/icon.change.js @@ -1,15 +1,25 @@ +import { Single } from "../../../base/single/0.single"; +import { IconButton } from "../../../base/single/button/buttons/button.icon"; +import { shortcut, extend, emptyFn, isFunction, createWidget, Controller } from "../../../core"; + /** * 可以改变图标的button * * Created by GUY on 2016/2/2. * - * @class BI.IconChangeButton - * @extends BI.Single + * @class IconChangeButton + * @extends Single */ -BI.IconChangeButton = BI.inherit(BI.Single, { - _defaultConfig: function () { - var conf = BI.IconChangeButton.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { +@shortcut() +export class IconChangeButton extends Single { + static xtype = "bi.icon_change_button"; + static EVENT_CHANGE = "EVENT_CHANGE"; + + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { baseCls: "bi-icon-change-button", iconCls: "", iconWidth: null, @@ -24,19 +34,19 @@ BI.IconChangeButton = BI.inherit(BI.Single, { disableSelected: false, // 使能选中 shadow: false, - isShadowShowingOnSelected: false, // 选中状态下是否显示阴影 + isShadowShowingOnSelected: false, // 选中状态下是否显示阴影 trigger: null, - handler: BI.emptyFn + handler: emptyFn, }); - }, + } - _init: function () { - var self = this, o = this.options; - o.iconCls = BI.isFunction(o.iconCls) ? this.__watch(o.iconCls, function (context, newValue) { - self.setIcon(newValue); + _init() { + const o = this.options; + o.iconCls = isFunction(o.iconCls) ? this.__watch(o.iconCls, (context, newValue) => { + this.setIcon(newValue); }) : o.iconCls; - BI.IconChangeButton.superclass._init.apply(this, arguments); - this.button = BI.createWidget({ + super._init.apply(this, arguments); + this.button = createWidget({ type: "bi.icon_button", element: this, cls: o.iconCls, @@ -55,32 +65,30 @@ BI.IconChangeButton = BI.inherit(BI.Single, { shadow: o.shadow, isShadowShowingOnSelected: o.isShadowShowingOnSelected, trigger: o.trigger, - handler: o.handler + handler: o.handler, }); - this.button.on(BI.Controller.EVENT_CHANGE, function () { - self.fireEvent(BI.Controller.EVENT_CHANGE, arguments); + this.button.on(Controller.EVENT_CHANGE, (...args) => { + this.fireEvent(Controller.EVENT_CHANGE, args); }); - this.button.on(BI.IconButton.EVENT_CHANGE, function () { - self.fireEvent(BI.IconChangeButton.EVENT_CHANGE, arguments); + this.button.on(IconButton.EVENT_CHANGE, (...args) => { + this.fireEvent(IconChangeButton.EVENT_CHANGE, args); }); - }, + } - isSelected: function () { + isSelected() { return this.button.isSelected(); - }, + } - setSelected: function (b) { + setSelected(b) { this.button.setSelected(b); - }, + } - setIcon: function (cls) { - var o = this.options; + setIcon(cls) { + const o = this.options; if (o.iconCls !== cls) { this.element.removeClass(o.iconCls).addClass(cls); o.iconCls = cls; } } -}); -BI.IconChangeButton.EVENT_CHANGE = "EVENT_CHANGE"; -BI.shortcut("bi.icon_change_button", BI.IconChangeButton); +} diff --git a/src/case/button/icon/icon.trigger.js b/src/case/button/icon/icon.trigger.js index daa76b121..1c799edd4 100644 --- a/src/case/button/icon/icon.trigger.js +++ b/src/case/button/icon/icon.trigger.js @@ -1,19 +1,24 @@ +import { IconButton } from "../../../base/single/button/buttons/button.icon"; +import { shortcut, extend } from "../../../core"; + /** * 统一的trigger图标按钮 * * Created by GUY on 2015/9/16. - * @class BI.TriggerIconButton - * @extends BI.IconButton + * @class TriggerIconButton + * @extends IconButton */ -BI.TriggerIconButton = BI.inherit(BI.IconButton, { - - _defaultConfig: function () { - var conf = BI.TriggerIconButton.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { - baseCls: (conf.baseCls || "") + " bi-trigger-icon-button overflow-hidden", - extraCls: "pull-down-font" +@shortcut() +export class TriggerIconButton extends IconButton { + static xtype = "bi.trigger_icon_button"; + EVENT_CHANGE = IconButton.EVENT_CHANGE; + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { + baseCls: `${conf.baseCls || ""} bi-trigger-icon-button overflow-hidden`, + extraCls: "pull-down-font", }); } -}); -BI.TriggerIconButton.EVENT_CHANGE = BI.IconButton.EVENT_CHANGE; -BI.shortcut("bi.trigger_icon_button", BI.TriggerIconButton); +} diff --git a/src/case/button/icon/iconhalf/icon.half.image.js b/src/case/button/icon/iconhalf/icon.half.image.js index a9e9d0014..e165b4d23 100644 --- a/src/case/button/icon/iconhalf/icon.half.image.js +++ b/src/case/button/icon/iconhalf/icon.half.image.js @@ -1,21 +1,28 @@ +import { IconButton } from "../../../../base/single/button/buttons/button.icon"; +import { shortcut, extend } from "../../../../core"; + + /** * guy * @extends BI.Single * @type {*|void|Object} */ -BI.HalfIconButton = BI.inherit(BI.IconButton, { - _defaultConfig: function () { - var conf = BI.HalfIconButton.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { +@shortcut() +export class HalfIconButton extends IconButton { + static xtype = "bi.half_icon_button"; + static EVENT_CHANGE = IconButton.EVENT_CHANGE + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { extraCls: "bi-half-icon-button check-half-select-icon", height: 16, width: 16, iconWidth: 16, iconHeight: 16, - selected: false + selected: false, }); } -}); -BI.HalfIconButton.EVENT_CHANGE = BI.IconButton.EVENT_CHANGE; +} -BI.shortcut("bi.half_icon_button", BI.HalfIconButton); \ No newline at end of file diff --git a/src/case/button/icon/iconhalf/icon.half.js b/src/case/button/icon/iconhalf/icon.half.js index f8c23afc4..1efe6c110 100644 --- a/src/case/button/icon/iconhalf/icon.half.js +++ b/src/case/button/icon/iconhalf/icon.half.js @@ -1,22 +1,31 @@ +import { BasicButton } from "../../../../base/single/button/button.basic"; +import { shortcut, extend } from "../../../../core"; + /** * guy * @extends BI.Single * @type {*|void|Object} */ -BI.HalfButton = BI.inherit(BI.BasicButton, { - _defaultConfig: function () { - var conf = BI.HalfIconButton.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { +@shortcut() +export class HalfButton extends BasicButton { + static xtype = "bi.half_button"; + static EVENT_CHANGE = "EVENT_CHANGE"; + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { selected: false, width: 14, height: 14, iconWidth: 14, iconHeight: 14, }); - }, + } - render: function () { - var o = this.options; + render() { + const o = this.options; + return { type: "bi.center_adapt", items: [{ @@ -26,15 +35,12 @@ BI.HalfButton = BI.inherit(BI.BasicButton, { height: o.iconHeight, }], }; - }, + } - doClick: function () { - BI.HalfButton.superclass.doClick.apply(this, arguments); + doClick() { + super.doClick.apply(this, arguments); if (this.isValid()) { - this.fireEvent(BI.HalfButton.EVENT_CHANGE); + this.fireEvent(HalfButton.EVENT_CHANGE); } } -}); -BI.HalfButton.EVENT_CHANGE = "EVENT_CHANGE"; - -BI.shortcut("bi.half_button", BI.HalfButton); +} diff --git a/src/case/button/index.js b/src/case/button/index.js new file mode 100644 index 000000000..f19d10b13 --- /dev/null +++ b/src/case/button/index.js @@ -0,0 +1,29 @@ +export { MultiSelectItem } from "./item.multiselect"; +export { SingleSelectIconTextItem } from "./item.singleselect.icontext"; +export { SingleSelectItem } from "./item.singleselect"; +export { SingleSelectRadioItem } from "./item.singleselect.radio"; +export { Switch } from "./switch"; + +export { IconChangeButton } from "./icon/icon.change"; +export { TriggerIconButton } from "./icon/icon.trigger"; +export { HalfIconButton } from "./icon/iconhalf/icon.half.image"; +export { HalfButton } from "./icon/iconhalf/icon.half"; + +export { ArrowNode } from "./node/node.arrow"; +export { FirstPlusGroupNode } from "./node/node.first.plus"; +export { IconArrowNode } from "./node/node.icon.arrow"; +export { LastPlusGroupNode } from "./node/node.last.plus"; +export { MidPlusGroupNode } from "./node/node.mid.plus"; +export { MultiLayerIconArrowNode } from "./node/node.multilayer.icon.arrow"; +export { PlusGroupNode } from "./node/node.plus"; +export { TreeNodeSwitcher } from "./node/siwtcher.tree.node"; +export { BasicTreeNode } from "./node/treenode"; + +export { FirstTreeLeafItem } from "./treeitem/item.first.treeleaf"; +export { IconTreeLeafItem } from "./treeitem/item.icon.treeleaf"; +export { LastTreeLeafItem } from "./treeitem/item.last.treeleaf"; +export { MidTreeLeafItem } from "./treeitem/item.mid.treeleaf"; +export { MultiLayerIconTreeLeafItem } from "./treeitem/item.multilayer.icon.treeleaf"; +export { RootTreeLeafItem } from "./treeitem/item.root.treeleaf"; +export { TreeTextLeafItem } from "./treeitem/item.treetextleaf"; +export { BasicTreeItem } from "./treeitem/treeitem"; diff --git a/src/case/button/item.multiselect.js b/src/case/button/item.multiselect.js index b90fafac5..df74642c9 100644 --- a/src/case/button/item.multiselect.js +++ b/src/case/button/item.multiselect.js @@ -1,36 +1,45 @@ +import { BasicButton } from "../../base/single/button/button.basic"; +import { shortcut, extend, createWidget } from "../../core"; + /** * guy * 复选框item * @type {*|void|Object} */ -BI.MultiSelectItem = BI.inherit(BI.BasicButton, { - _defaultConfig: function () { - return BI.extend(BI.MultiSelectItem.superclass._defaultConfig.apply(this, arguments), { +@shortcut() +export class MultiSelectItem extends BasicButton { + static xtype = "bi.multi_select_item"; + static EVENT_CHANGE = "EVENT_CHANGE"; + + + _defaultConfig() { + return extend(super._defaultConfig(arguments), { extraCls: "bi-multi-select-item", attributes: { - tabIndex: 1 + tabIndex: 1, }, height: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, iconWrapperWidth: 26, }); - }, + } - render: function () { - var self = this, o = this.options; - this.checkbox = BI.createWidget({ - type: "bi.checkbox" + render() { + const o = this.options; + this.checkbox = createWidget({ + type: "bi.checkbox", }); + return { type: "bi.vertical_adapt", columnSize: [o.iconWrapperWidth || o.height, "fill"], items: [{ type: "bi.center_adapt", - items: [this.checkbox] + items: [this.checkbox], }, { el: { type: "bi.label", - ref: function (_ref) { - self.text = _ref; + ref: _ref => { + this.text = _ref; }, cls: "list-item-text", textAlign: "left", @@ -44,11 +53,11 @@ BI.MultiSelectItem = BI.inherit(BI.BasicButton, { text: o.text, keyword: o.keyword, value: o.value, - py: o.py - } - }] + py: o.py, + }, + }], }; - }, + } // _setEnable: function (enable) { // BI.MultiSelectItem.superclass._setEnable.apply(this, arguments); @@ -59,25 +68,24 @@ BI.MultiSelectItem = BI.inherit(BI.BasicButton, { // } // }, - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doClick: function () { + doClick() { BI.MultiSelectItem.superclass.doClick.apply(this, arguments); if (this.isValid()) { this.fireEvent(BI.MultiSelectItem.EVENT_CHANGE, this.getValue(), this); } - }, + } - setSelected: function (v) { + setSelected(v) { BI.MultiSelectItem.superclass.setSelected.apply(this, arguments); this.checkbox.setSelected(v); } -}); -BI.MultiSelectItem.EVENT_CHANGE = "EVENT_CHANGE"; -BI.shortcut("bi.multi_select_item", BI.MultiSelectItem); +} + diff --git a/src/case/button/item.singleselect.icontext.js b/src/case/button/item.singleselect.icontext.js index 47960e9fa..d92f59050 100644 --- a/src/case/button/item.singleselect.icontext.js +++ b/src/case/button/item.singleselect.icontext.js @@ -1,24 +1,30 @@ +import { Single } from "../../base/single/0.single"; +import { shortcut, extend, createWidget, Controller } from "../../core"; + /** * Created by GUY on 2016/2/2. * * @class BI.SingleSelectIconTextItem * @extends BI.BasicButton */ -BI.SingleSelectIconTextItem = BI.inherit(BI.Single, { - _defaultConfig: function () { - return BI.extend(BI.SingleSelectIconTextItem.superclass._defaultConfig.apply(this, arguments), { +@shortcut() +export class SingleSelectIconTextItem extends Single { + static xtype = "bi.single_select_icon_text_item"; + + _defaultConfig() { + return extend(super._defaultConfig(arguments), { extraCls: "bi-single-select-icon-text-item bi-list-item-active", attributes: { - tabIndex: 1 + tabIndex: 1, }, iconCls: "", - height: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT + height: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, }); - }, + } - render: function () { - var self = this, o = this.options; - this.text = BI.createWidget({ + render() { + const o = this.options; + this.text = createWidget({ type: "bi.icon_text_item", element: this, cls: o.iconCls, @@ -35,37 +41,37 @@ BI.SingleSelectIconTextItem = BI.inherit(BI.Single, { text: o.text, keyword: o.keyword, value: o.value, - py: o.py + py: o.py, }); - this.text.on(BI.Controller.EVENT_CHANGE, function () { - self.fireEvent(BI.Controller.EVENT_CHANGE, arguments); + this.text.on(Controller.EVENT_CHANGE, function () { + self.fireEvent(Controller.EVENT_CHANGE, arguments); }); - }, + } - _setEnable: function (enable) { - BI.SingleSelectIconTextItem.superclass._setEnable.apply(this, arguments); + _setEnable(enable) { + super._setEnable.apply(this, arguments); if (enable === true) { this.element.attr("tabIndex", 1); } else if (enable === false) { this.element.removeAttr("tabIndex"); } - }, + } - isSelected: function () { + isSelected() { return this.text.isSelected(); - }, + } - setSelected: function (b) { + setSelected(b) { this.text.setSelected(b); - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); + unRedMark() { + this.text.unRedMark(...arguments); } -}); +} + -BI.shortcut("bi.single_select_icon_text_item", BI.SingleSelectIconTextItem); diff --git a/src/case/button/item.singleselect.js b/src/case/button/item.singleselect.js index 50a1cf6db..9b3e682c7 100644 --- a/src/case/button/item.singleselect.js +++ b/src/case/button/item.singleselect.js @@ -1,19 +1,26 @@ -BI.SingleSelectItem = BI.inherit(BI.BasicButton, { - _defaultConfig: function () { - return BI.extend(BI.SingleSelectItem.superclass._defaultConfig.apply(this, arguments), { +import { BasicButton } from "../../base/single/button/button.basic"; +import { shortcut, extend, createWidget } from "../../core"; + +@shortcut() +export class SingleSelectItem extends BasicButton { + static xtype = "bi.single_select_item"; + static EVENT_CHANGE = "EVENT_CHANGE"; + + _defaultConfig() { + return extend(super._defaultConfig(arguments), { extraCls: "bi-single-select-item bi-list-item-active", attributes: { - tabIndex: 1 + tabIndex: 1, }, textHgap: 10, height: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, - textAlign: "left" + textAlign: "left", }); - }, + } - render: function () { - var self = this, o = this.options; - this.text = BI.createWidget({ + render() { + const o = this.options; + this.text = createWidget({ type: "bi.label", element: this, textAlign: o.textAlign, @@ -27,38 +34,38 @@ BI.SingleSelectItem = BI.inherit(BI.BasicButton, { text: o.text, keyword: o.keyword, value: o.value, - py: o.py + py: o.py, }); - }, + } - _setEnable: function (enable) { - BI.SingleSelectItem.superclass._setEnable.apply(this, arguments); + _setEnable(enable) { + super._setEnable.apply(this, arguments); if (enable === true) { this.element.attr("tabIndex", 1); } else if (enable === false) { this.element.removeAttr("tabIndex"); } - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doClick: function () { - BI.SingleSelectItem.superclass.doClick.apply(this, arguments); + doClick() { + super.doClick.apply(this, arguments); if (this.isValid()) { - this.fireEvent(BI.SingleSelectItem.EVENT_CHANGE, this.isSelected(), this); + this.fireEvent(SingleSelectItem.EVENT_CHANGE, this.isSelected(), this); } - }, + } - setSelected: function (v) { - BI.SingleSelectItem.superclass.setSelected.apply(this, arguments); + setSelected(v) { + super.setSelected.apply(this, arguments); } -}); +} + + -BI.SingleSelectItem.EVENT_CHANGE = "EVENT_CHANGE"; -BI.shortcut("bi.single_select_item", BI.SingleSelectItem); diff --git a/src/case/button/item.singleselect.radio.js b/src/case/button/item.singleselect.radio.js index 74ebe49c9..19a04f120 100644 --- a/src/case/button/item.singleselect.radio.js +++ b/src/case/button/item.singleselect.radio.js @@ -1,23 +1,31 @@ +import { BasicButton } from "../../base/single/button/button.basic"; +import { shortcut, extend } from "../../core"; + /** * guy * 单选框item * @type {*|void|Object} */ -BI.SingleSelectRadioItem = BI.inherit(BI.BasicButton, { - _defaultConfig: function () { - return BI.extend(BI.SingleSelectRadioItem.superclass._defaultConfig.apply(this, arguments), { +@shortcut() +export class SingleSelectRadioItem extends BasicButton { + static xtype = "bi.single_select_radio_item"; + static EVENT_CHANGE = "EVENT_CHANGE"; + + _defaultConfig() { + return extend(super._defaultConfig(arguments), { extraCls: "bi-single-select-radio-item", attributes: { - tabIndex: 1 + tabIndex: 1, }, height: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, iconWrapperWidth: 16, textHgap: 10, }); - }, + } + + render() { + const o = this.options; - render: function () { - var self = this, o = this.options; return { type: "bi.vertical_adapt", columnSize: [o.iconWrapperWidth || o.height, "fill"], @@ -25,15 +33,15 @@ BI.SingleSelectRadioItem = BI.inherit(BI.BasicButton, { type: "bi.center_adapt", items: [{ type: "bi.radio", - ref: function (_ref) { - self.radio = _ref; + ref: _ref => { + this.radio = _ref; }, - }] + }], }, { el: { type: "bi.label", - ref: function (_ref) { - self.text = _ref; + ref: _ref => { + this.text = _ref; }, cls: "list-item-text", textAlign: "left", @@ -47,42 +55,39 @@ BI.SingleSelectRadioItem = BI.inherit(BI.BasicButton, { text: o.text, keyword: o.keyword, value: o.value, - py: o.py - } - }] + py: o.py, + }, + }], }; - }, + } - _setEnable: function (enable) { - BI.SingleSelectRadioItem.superclass._setEnable.apply(this, arguments); + _setEnable(enable) { + super._setEnable.apply(this, arguments); if (enable === true) { this.element.attr("tabIndex", 1); } else if (enable === false) { this.element.removeAttr("tabIndex"); } - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doClick: function () { + doClick() { BI.SingleSelectRadioItem.superclass.doClick.apply(this, arguments); if (this.isValid()) { this.fireEvent(BI.SingleSelectRadioItem.EVENT_CHANGE, this.isSelected(), this); } - }, + } - setSelected: function (v) { + setSelected(v) { BI.SingleSelectRadioItem.superclass.setSelected.apply(this, arguments); this.radio.setSelected(v); - } -}); +} -BI.SingleSelectRadioItem.EVENT_CHANGE = "EVENT_CHANGE"; -BI.shortcut("bi.single_select_radio_item", BI.SingleSelectRadioItem); diff --git a/src/case/button/node/node.arrow.js b/src/case/button/node/node.arrow.js index d0b21ca7c..08cc58605 100644 --- a/src/case/button/node/node.arrow.js +++ b/src/case/button/node/node.arrow.js @@ -1,34 +1,42 @@ +import { NodeButton } from "../../../base/single/button/button.node"; +import { shortcut, extend, createWidget } from "../../../core"; + /** * Created by roy on 15/10/16. */ -BI.ArrowNode = BI.inherit(BI.NodeButton, { - _defaultConfig: function () { - var conf = BI.ArrowNode.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { - baseCls: (conf.baseCls || "") + " bi-arrow-group-node bi-list-item", +@shortcut() +export class ArrowNode extends NodeButton { + static xtype = "bi.arrow_group_node"; + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { + baseCls: `${conf.baseCls || ""} bi-arrow-group-node bi-list-item`, id: "", pId: "", open: false, height: 24, - iconWrapperWidth: 16 + iconWrapperWidth: 16, }); - }, + } - render: function () { - var self = this, o = this.options; - this.checkbox = BI.createWidget({ + render() { + const o = this.options; + this.checkbox = createWidget({ type: "bi.arrow_group_node_checkbox", expandIcon: o.expandIcon, collapseIcon: o.collapseIcon, }); + return { type: "bi.vertical_adapt", columnSize: [o.iconWrapperWidth || o.height, "fill"], items: [this.checkbox, { el: { type: "bi.label", - ref: function (_ref) { - self.text = _ref; + ref: _ref => { + this.text = _ref; }, textAlign: "left", whiteSpace: "nowrap", @@ -41,34 +49,33 @@ BI.ArrowNode = BI.inherit(BI.NodeButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword - } - }] + keyword: o.keyword, + }, + }], }; - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doClick: function () { - BI.ArrowNode.superclass.doClick.apply(this, arguments); + doClick() { + super.doClick.apply(this, arguments); this.checkbox.setSelected(this.isOpened()); - }, + } - setText: function (text) { - BI.ArrowNode.superclass.setText.apply(this, arguments); + setText(text) { + super.setText.apply(this, arguments); this.text.setText(text); - }, + } - setOpened: function (v) { - BI.ArrowNode.superclass.setOpened.apply(this, arguments); + setOpened(v) { + super.setOpened.apply(this, arguments); this.checkbox.setSelected(v); } -}); +} -BI.shortcut("bi.arrow_group_node", BI.ArrowNode); diff --git a/src/case/button/node/node.first.plus.js b/src/case/button/node/node.first.plus.js index 989cdec0b..60a266d49 100644 --- a/src/case/button/node/node.first.plus.js +++ b/src/case/button/node/node.first.plus.js @@ -1,33 +1,42 @@ +import { NodeButton } from "../../../base/single/button/button.node"; +import { shortcut, extend, createWidget, Controller } from "../../../core"; + + /** * 加号表示的组节点 * Created by GUY on 2015/9/6. - * @class BI.FirstPlusGroupNode - * @extends BI.NodeButton + * @class FirstPlusGroupNode + * @extends NodeButton */ -BI.FirstPlusGroupNode = BI.inherit(BI.NodeButton, { - _defaultConfig: function () { - var conf = BI.FirstPlusGroupNode.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { - baseCls: (conf.baseCls || "") + " bi-first-plus-group-node bi-list-item", +@shortcut() +export class FirstPlusGroupNode extends NodeButton { + static xtype = "bi.first_plus_group_node"; + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { + baseCls: `${conf.baseCls || ""} bi-first-plus-group-node bi-list-item`, logic: { - dynamic: false + dynamic: false, }, id: "", pId: "", open: false, - height: 24 + height: 24, }); - }, - _init: function () { - BI.FirstPlusGroupNode.superclass._init.apply(this, arguments); - var self = this, o = this.options; - this.checkbox = BI.createWidget({ + } + + _init() { + super._init.apply(this, arguments); + const o = this.options; + this.checkbox = createWidget({ type: "bi.first_tree_node_checkbox", stopPropagation: true, iconHeight: o.height, - iconWidth: o.height + iconWidth: o.height, }); - this.text = BI.createWidget({ + this.text = createWidget({ type: "bi.label", textAlign: "left", whiteSpace: "nowrap", @@ -37,9 +46,9 @@ BI.FirstPlusGroupNode = BI.inherit(BI.NodeButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword + keyword: o.keyword, }); - this.checkbox.on(BI.Controller.EVENT_CHANGE, function (type) { + this.checkbox.on(Controller.EVENT_CHANGE, function (type) { if (type === BI.Events.CLICK) { if (this.isSelected()) { self.triggerExpand(); @@ -48,37 +57,36 @@ BI.FirstPlusGroupNode = BI.inherit(BI.NodeButton, { } } }); - var type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); - var items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { + const type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); + const items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, - el: this.checkbox + el: this.checkbox, }, this.text); BI.createWidget(BI.extend({ - element: this + element: this, }, BI.LogicFactory.createLogic(type, BI.extend(o.logic, { - items: items + items, })))); - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doClick: function () { - BI.FirstPlusGroupNode.superclass.doClick.apply(this, arguments); + doClick() { + super.doClick.apply(this, arguments); this.checkbox.setSelected(this.isSelected()); - }, + } - setOpened: function (v) { - BI.FirstPlusGroupNode.superclass.setOpened.apply(this, arguments); + setOpened(v) { + super.setOpened.apply(this, arguments); if (BI.isNotNull(this.checkbox)) { this.checkbox.setSelected(v); } } -}); +} -BI.shortcut("bi.first_plus_group_node", BI.FirstPlusGroupNode); diff --git a/src/case/button/node/node.icon.arrow.js b/src/case/button/node/node.icon.arrow.js index d641e655d..2aa910a9b 100644 --- a/src/case/button/node/node.icon.arrow.js +++ b/src/case/button/node/node.icon.arrow.js @@ -1,18 +1,24 @@ +import { NodeButton } from "../../../base/single/button/button.node"; +import { shortcut, extend, createWidget, Controller } from "../../../core"; + /** * Created by User on 2016/3/31. - */ -/** + * * > + icon + 文本 - * @class BI.IconArrowNode - * @extends BI.NodeButton + * @class IconArrowNode + * @extends NodeButton */ -BI.IconArrowNode = BI.inherit(BI.NodeButton, { - _defaultConfig: function () { - var conf = BI.IconArrowNode.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { - baseCls: (conf.baseCls || "") + " bi-icon-arrow-node bi-list-item", +@shortcut() +export class IconArrowNode extends NodeButton { + static xtype = "bi.icon_arrow_node"; + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { + baseCls: `${conf.baseCls || ""} bi-icon-arrow-node bi-list-item`, logic: { - dynamic: false + dynamic: false, }, id: "", pId: "", @@ -21,29 +27,30 @@ BI.IconArrowNode = BI.inherit(BI.NodeButton, { iconHeight: 12, iconWidth: 12, iconCls: "", - iconWrapperWidth: 16 + iconWrapperWidth: 16, }); - }, - _init: function () { - BI.IconArrowNode.superclass._init.apply(this, arguments); - var self = this, o = this.options; - this.checkbox = BI.createWidget({ + } + + _init() { + super._init.apply(this, arguments); + const o = this.options; + this.checkbox = createWidget({ type: "bi.arrow_group_node_checkbox", expandIcon: o.expandIcon, collapseIcon: o.collapseIcon, width: 24, - stopPropagation: true + stopPropagation: true, }); - var icon = BI.createWidget({ + const icon = createWidget({ type: "bi.icon_label", width: 24, cls: o.iconCls, iconWidth: o.iconWidth, - iconHeight: o.iconHeight + iconHeight: o.iconHeight, }); - this.text = BI.createWidget({ + createWidget({ type: "bi.label", textAlign: "left", whiteSpace: "nowrap", @@ -53,52 +60,50 @@ BI.IconArrowNode = BI.inherit(BI.NodeButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword + keyword: o.keyword, }); - this.checkbox.on(BI.Controller.EVENT_CHANGE, function (type) { + this.checkbox.on(Controller.EVENT_CHANGE, type => { if (type === BI.Events.CLICK) { - if (this.isSelected()) { - self.triggerExpand(); + if (this.checkbox.isSelected()) { + this.triggerExpand(); } else { - self.triggerCollapse(); + this.triggerCollapse(); } } }); - var type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); - var items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { + const type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); + const items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { width: o.iconWrapperWidth, - el: this.checkbox + el: this.checkbox, }, { width: 16, - el: icon + el: icon, }, this.text); - BI.createWidget(BI.extend({ - element: this - }, BI.LogicFactory.createLogic(type, BI.extend(o.logic, { - items: items, - rgap: 5 + createWidget(extend({ + element: this, + }, BI.LogicFactory.createLogic(type, extend(o.logic, { + items, + rgap: 5, })))); - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark () { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doClick: function () { + doClick() { BI.IconArrowNode.superclass.doClick.apply(this, arguments); this.checkbox.setSelected(this.isSelected()); - }, + } - setOpened: function (v) { + setOpened(v) { BI.IconArrowNode.superclass.setOpened.apply(this, arguments); if (BI.isNotNull(this.checkbox)) { this.checkbox.setSelected(v); } } -}); - -BI.shortcut("bi.icon_arrow_node", BI.IconArrowNode); +} diff --git a/src/case/button/node/node.last.plus.js b/src/case/button/node/node.last.plus.js index c1a949e3b..0dba75eaf 100644 --- a/src/case/button/node/node.last.plus.js +++ b/src/case/button/node/node.last.plus.js @@ -1,33 +1,40 @@ +import { NodeButton } from "../../../base/single/button/button.node"; +import { shortcut, extend, createWidget, isNotNull } from "../../../core"; + /** * 加号表示的组节点 * Created by GUY on 2015/9/6. - * @class BI.LastPlusGroupNode - * @extends BI.NodeButton + * @class LastPlusGroupNode + * @extends NodeButton */ -BI.LastPlusGroupNode = BI.inherit(BI.NodeButton, { - _defaultConfig: function () { - var conf = BI.LastPlusGroupNode.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { - baseCls: (conf.baseCls || "") + " bi-last-plus-group-node bi-list-item", +@shortcut() +export class LastPlusGroupNode extends NodeButton { + static xtype = "bi.last_plus_group_node"; + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { + baseCls: `${conf.baseCls || ""} bi-last-plus-group-node bi-list-item`, logic: { - dynamic: false + dynamic: false, }, id: "", pId: "", open: false, - height: 24 + height: 24, }); - }, - _init: function () { + } + _init() { BI.LastPlusGroupNode.superclass._init.apply(this, arguments); - var self = this, o = this.options; - this.checkbox = BI.createWidget({ + const o = this.options; + this.checkbox = createWidget({ type: "bi.last_tree_node_checkbox", stopPropagation: true, iconHeight: o.height, - iconWidth: o.height + iconWidth: o.height, }); - this.text = BI.createWidget({ + this.text = createWidget({ type: "bi.label", textAlign: "left", whiteSpace: "nowrap", @@ -37,48 +44,46 @@ BI.LastPlusGroupNode = BI.inherit(BI.NodeButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword + keyword: o.keyword, }); - this.checkbox.on(BI.Controller.EVENT_CHANGE, function (type) { - if(type === BI.Events.CLICK) { - if (this.isSelected()) { - self.triggerExpand(); + this.checkbox.on(BI.Controller.EVENT_CHANGE, type => { + if (type === BI.Events.CLICK) { + if (this.checkbox.isSelected()) { + this.triggerExpand(); } else { - self.triggerCollapse(); + this.triggerCollapse(); } } }); - var type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); - var items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { + const type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); + const items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, - el: this.checkbox + el: this.checkbox, }, this.text); - BI.createWidget(BI.extend({ - element: this - }, BI.LogicFactory.createLogic(type, BI.extend(o.logic, { - items: items + createWidget(extend({ + element: this, + }, BI.LogicFactory.createLogic(type, extend(o.logic, { + items, })))); - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doClick: function () { - BI.LastPlusGroupNode.superclass.doClick.apply(this, arguments); + doClick() { + super.doClick.apply(this, arguments); this.checkbox.setSelected(this.isSelected()); - }, + } - setOpened: function (v) { - BI.LastPlusGroupNode.superclass.setOpened.apply(this, arguments); - if (BI.isNotNull(this.checkbox)) { + setOpened(v) { + super.setOpened.apply(this, arguments); + if (isNotNull(this.checkbox)) { this.checkbox.setSelected(v); } } -}); - -BI.shortcut("bi.last_plus_group_node", BI.LastPlusGroupNode); \ No newline at end of file +} diff --git a/src/case/button/node/node.mid.plus.js b/src/case/button/node/node.mid.plus.js index 839565114..94ce8b1b9 100644 --- a/src/case/button/node/node.mid.plus.js +++ b/src/case/button/node/node.mid.plus.js @@ -1,33 +1,41 @@ +import { NodeButton } from "../../../base/single/button/button.node"; +import { shortcut, extend, createWidget, Controller } from "../../../core"; + /** * 加号表示的组节点 * Created by GUY on 2015/9/6. * @class BI.MidPlusGroupNode * @extends BI.NodeButton */ -BI.MidPlusGroupNode = BI.inherit(BI.NodeButton, { - _defaultConfig: function () { - var conf = BI.MidPlusGroupNode.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { - baseCls: (conf.baseCls || "") + " bi-mid-plus-group-node bi-list-item", +@shortcut +export class MidPlusGroupNode extends NodeButton { + static xtype = "bi.mid_plus_group_node"; + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { + baseCls: `${conf.baseCls || ""} bi-mid-plus-group-node bi-list-item`, logic: { - dynamic: false + dynamic: false, }, id: "", pId: "", open: false, - height: 24 + height: 24, }); - }, - _init: function () { - BI.MidPlusGroupNode.superclass._init.apply(this, arguments); - var self = this, o = this.options; - this.checkbox = BI.createWidget({ + } + + _init() { + super._init.apply(this, arguments); + const o = this.options; + this.checkbox = createWidget({ type: "bi.mid_tree_node_checkbox", stopPropagation: true, iconHeight: o.height, - iconWidth: o.height + iconWidth: o.height, }); - this.text = BI.createWidget({ + this.text = createWidget({ type: "bi.label", textAlign: "left", whiteSpace: "nowrap", @@ -37,48 +45,47 @@ BI.MidPlusGroupNode = BI.inherit(BI.NodeButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword + keyword: o.keyword, }); - this.checkbox.on(BI.Controller.EVENT_CHANGE, function (type) { + this.checkbox.on(Controller.EVENT_CHANGE, type => { if (type === BI.Events.CLICK) { - if (this.isSelected()) { - self.triggerExpand(); + if (this.checkbox.isSelected()) { + this.triggerExpand(); } else { - self.triggerCollapse(); + this.triggerCollapse(); } } }); - var type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); - var items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { + const type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); + const items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, - el: this.checkbox + el: this.checkbox, }, this.text); - BI.createWidget(BI.extend({ - element: this - }, BI.LogicFactory.createLogic(type, BI.extend(o.logic, { - items: items + createWidget(extend({ + element: this, + }, BI.LogicFactory.createLogic(type, extend(o.logic, { + items, })))); - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doClick: function () { - BI.MidPlusGroupNode.superclass.doClick.apply(this, arguments); + doClick() { + super.doClick.apply(this, arguments); this.checkbox.setSelected(this.isSelected()); - }, + } - setOpened: function (v) { + setOpened(v) { BI.MidPlusGroupNode.superclass.setOpened.apply(this, arguments); if (BI.isNotNull(this.checkbox)) { this.checkbox.setSelected(v); } } -}); +} -BI.shortcut("bi.mid_plus_group_node", BI.MidPlusGroupNode); \ No newline at end of file diff --git a/src/case/button/node/node.multilayer.icon.arrow.js b/src/case/button/node/node.multilayer.icon.arrow.js index ffa9c50ea..c1a9b35da 100644 --- a/src/case/button/node/node.multilayer.icon.arrow.js +++ b/src/case/button/node/node.multilayer.icon.arrow.js @@ -1,7 +1,14 @@ -BI.MultiLayerIconArrowNode = BI.inherit(BI.NodeButton, { - _defaultConfig: function () { - var conf = BI.MultiLayerIconArrowNode.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { +import { NodeButton } from "../../../base/single/button/button.node"; +import { shortcut, extend, createWidget, Controller, count } from "../../../core"; + +@shortcut() +export class MultiLayerIconArrowNode extends NodeButton { + static xtype = "bi.multilayer_icon_arrow_node"; + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { extraCls: "bi-multilayer-icon-arrow-node bi-list-item", layer: 0, // 第几层级 id: "", @@ -10,13 +17,14 @@ BI.MultiLayerIconArrowNode = BI.inherit(BI.NodeButton, { height: 24, iconHeight: 16, iconWidth: 16, - iconCls: "" + iconCls: "", }); - }, - _init: function () { - BI.MultiLayerIconArrowNode.superclass._init.apply(this, arguments); - var self = this, o = this.options; - this.node = BI.createWidget({ + } + + _init() { + super._init.apply(this, arguments); + const o = this.options; + this.node = createWidget({ type: "bi.icon_arrow_node", iconCls: o.iconCls, cls: "bi-list-item-none", @@ -30,60 +38,58 @@ BI.MultiLayerIconArrowNode = BI.inherit(BI.NodeButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword + keyword: o.keyword, }); - this.node.on(BI.Controller.EVENT_CHANGE, function (type) { - self.setSelected(self.isSelected()); - self.fireEvent(BI.Controller.EVENT_CHANGE, arguments); + this.node.on(Controller.EVENT_CHANGE, (...args) => { + this.setSelected(this.isSelected()); + this.fireEvent(Controller.EVENT_CHANGE, args); }); - var items = []; - BI.count(0, o.layer, function () { + const items = []; + count(0, o.layer, () => { items.push({ type: "bi.layout", width: 15, - height: o.height + height: o.height, }); }); items.push(this.node); - BI.createWidget({ + createWidget({ type: "bi.horizontal_adapt", element: this, columnSize: BI.makeArray(o.layer, 15), - items: items + items, }); - }, + } - isOnce: function () { + isOnce() { return true; - }, + } - doRedMark: function () { - this.node.doRedMark.apply(this.node, arguments); - }, + doRedMark() { + this.node.doRedMark(...arguments); + } - unRedMark: function () { - this.node.unRedMark.apply(this.node, arguments); - }, + unRedMark() { + this.node.unRedMark(...arguments); + } - isSelected: function () { + isSelected() { return this.node.isSelected(); - }, + } - setSelected: function (b) { - BI.MultiLayerIconArrowNode.superclass.setSelected.apply(this, arguments); + setSelected(b) { + super.setSelected.apply(this, arguments); this.node.setSelected(b); - }, + } - doClick: function () { - BI.NodeButton.superclass.doClick.apply(this, arguments); + doClick() { + super.doClick.apply(this, arguments); this.node.setSelected(this.isSelected()); - }, + } - setOpened: function (v) { - BI.MultiLayerIconArrowNode.superclass.setOpened.apply(this, arguments); + setOpened(v) { + super.setOpened.apply(this, arguments); this.node.setOpened(v); } -}); - -BI.shortcut("bi.multilayer_icon_arrow_node", BI.MultiLayerIconArrowNode); +} diff --git a/src/case/button/node/node.plus.js b/src/case/button/node/node.plus.js index 4b9477ea7..f3f08b0cf 100644 --- a/src/case/button/node/node.plus.js +++ b/src/case/button/node/node.plus.js @@ -1,42 +1,51 @@ +import { NodeButton } from "../../../base/single/button/button.node"; +import { shortcut, extend, createWidget, Controller } from "../../../core"; + /** * 加号表示的组节点 * Created by GUY on 2015/9/6. - * @class BI.PlusGroupNode - * @extends BI.NodeButton + * @class PlusGroupNode + * @extends NodeButton */ -BI.PlusGroupNode = BI.inherit(BI.NodeButton, { - _defaultConfig: function () { - var conf = BI.PlusGroupNode.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { - baseCls: (conf.baseCls || "") + " bi-plus-group-node bi-list-item", +@shortcut() +export class PlusGroupNode extends NodeButton { + static xtype = "bi.plus_group_node"; + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { + baseCls: `${conf.baseCls || ""} bi-plus-group-node bi-list-item`, id: "", pId: "", open: false, - height: 24 + height: 24, }); - }, + } - render: function () { - var self = this, o = this.options; - this.checkbox = BI.createWidget({ + render() { + const o = this.options; + this.checkbox = createWidget({ type: "bi.tree_node_checkbox", iconHeight: o.height, - iconWidth: o.iconWrapperWidth || o.height + iconWidth: o.iconWrapperWidth || o.height, }); - this.checkbox.on(BI.Controller.EVENT_CHANGE, function (type) { + this.checkbox.on(Controller.EVENT_CHANGE, (...args) => { + const [type] = args; if (type === BI.Events.CLICK) { - self.setSelected(self.isSelected()); + this.setSelected(this.isSelected()); } - self.fireEvent(BI.Controller.EVENT_CHANGE, arguments); + this.fireEvent(Controller.EVENT_CHANGE, args); }); + return { type: "bi.vertical_adapt", columnSize: [o.iconWrapperWidth || o.height, "fill"], items: [this.checkbox, { el: { type: "bi.label", - ref: function (_ref) { - self.text = _ref; + ref: _ref => { + this.text = _ref; }, textAlign: "left", whiteSpace: "nowrap", @@ -49,31 +58,29 @@ BI.PlusGroupNode = BI.inherit(BI.NodeButton, { text: o.text, value: o.value, keyword: o.keyword, - py: o.py - } - }] + py: o.py, + }, + }], }; - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doClick: function () { - BI.PlusGroupNode.superclass.doClick.apply(this, arguments); + doClick() { + super.doClick.apply(this, arguments); this.checkbox.setSelected(this.isSelected()); - }, + } - setOpened: function (v) { - BI.PlusGroupNode.superclass.setOpened.apply(this, arguments); + setOpened(v) { + super.setOpened.apply(this, arguments); if (this.checkbox) { this.checkbox.setSelected(v); } } -}); - -BI.shortcut("bi.plus_group_node", BI.PlusGroupNode); +} diff --git a/src/case/button/node/siwtcher.tree.node.js b/src/case/button/node/siwtcher.tree.node.js index 8669f697b..46519ecb5 100644 --- a/src/case/button/node/siwtcher.tree.node.js +++ b/src/case/button/node/siwtcher.tree.node.js @@ -1,17 +1,23 @@ -BI.TreeNodeSwitcher = BI.inherit(BI.NodeButton, { - _defaultConfig: function () { - return BI.extend(BI.TreeNodeSwitcher.superclass._defaultConfig.apply(this, arguments), { +import { NodeButton } from "../../../base/single/button/button.node"; +import { shortcut, extend } from "../../../core"; + +@shortcut() +export class TreeNodeSwitcher extends NodeButton { + static xtype = "bi.tree_node_switcher"; + static EVENT_CHANGE = "EVENT_CHANGE"; + + _defaultConfig() { + return extend(super._defaultConfig(arguments), { baseCls: "bi-tree-node-switcher", iconWidth: 24, iconHeight: 24, isFirstNode: false, isLastNode: false, - layer: 0 + layer: 0, }); - }, - - render: function () { + } + render() { const [collapse, expand] = this.getIconCls(); return { @@ -20,10 +26,10 @@ BI.TreeNodeSwitcher = BI.inherit(BI.NodeButton, { iconHeight: this.options.iconHeight, cls: this.options.open ? expand : collapse, }; - }, + } - getIconCls: function () { - var options = this.options; + getIconCls() { + const options = this.options; if (options.layer === 0 && options.isFirstNode && options.isLastNode) { // 只有一层,并且是第一个节点,并且是最后一个节点 return BI.STYLE_CONSTANTS.LINK_LINE_TYPE === "solid" ? ["tree-solid-collapse-icon-type1", "tree-solid-expand-icon-type1"] : ["tree-collapse-icon-type1", "tree-expand-icon-type1"]; @@ -37,23 +43,20 @@ BI.TreeNodeSwitcher = BI.inherit(BI.NodeButton, { // 其他情况 return BI.STYLE_CONSTANTS.LINK_LINE_TYPE === "solid" ? ["tree-solid-collapse-icon-type1", "tree-solid-expand-icon-type1"] : ["tree-collapse-icon-type3", "tree-expand-icon-type3"]; } - }, + } - setOpened: function (b) { - BI.TreeNodeSwitcher.superclass.setOpened.apply(this, arguments); + setOpened(b) { + super.setOpened.apply(this, arguments); const [collapse, expand] = this.getIconCls(); if (b) { this.element.addClass(expand).removeClass(collapse); } else { this.element.addClass(collapse).removeClass(expand); } - }, - - doClick: function () { - BI.TreeNodeSwitcher.superclass.doClick.apply(this, arguments); - this.fireEvent(BI.TreeNodeSwitcher.EVENT_CHANGE, this); } -}); -BI.TreeNodeSwitcher.EVENT_CHANGE = "EVENT_CHANGE"; -BI.shortcut("bi.tree_node_switcher", BI.TreeNodeSwitcher); + doClick() { + super.doClick.apply(this, arguments); + this.fireEvent(TreeNodeSwitcher.EVENT_CHANGE, this); + } +} diff --git a/src/case/button/node/treenode.js b/src/case/button/node/treenode.js index c557f791c..b2977e50a 100644 --- a/src/case/button/node/treenode.js +++ b/src/case/button/node/treenode.js @@ -1,8 +1,15 @@ -BI.BasicTreeNode = BI.inherit(BI.NodeButton, { - _defaultConfig: function (props) { - var conf = BI.BasicTreeNode.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { - baseCls: (conf.baseCls || "") + " bi-tree-node " + (props.selectable ? "bi-list-item-active" : "bi-list-item"), +import { NodeButton } from "../../../base/single/button/button.node"; +import { shortcut, extend } from "../../../core"; + +@shortcut() +export class BasicTreeNode extends NodeButton { + static xtype = "bi.tree_node"; + + _defaultConfig(props) { + const conf = super._defaultConfig.apply(this, arguments); + + return extend(conf, { + baseCls: `${conf.baseCls || ""} bi-tree-node ${props.selectable ? "bi-list-item-active" : "bi-list-item"}`, id: "", pId: "", open: false, @@ -14,15 +21,15 @@ BI.BasicTreeNode = BI.inherit(BI.NodeButton, { selectable: true, disabled: false, // disabled不会影响展开收起功能 }); - }, + } - render: function () { - var self = this, o = this.options; + render() { + const o = this.options; const checkbox = { type: "bi.tree_node_switcher", - __ref: function (_ref) { - self.switcher = _ref; + __ref: _ref => { + this.switcher = _ref; }, iconHeight: o.height, iconWidth: o.iconWrapperWidth || o.height, @@ -32,7 +39,7 @@ BI.BasicTreeNode = BI.inherit(BI.NodeButton, { layer: o.layer, ...o.switcherIcon, stopPropagation: o.selectable, - mounted: function () { + mounted () { this.setEnable(true); }, listeners: [ @@ -42,9 +49,9 @@ BI.BasicTreeNode = BI.inherit(BI.NodeButton, { if (!this.isEnabled() || o.selectable) { this.isOpened() ? this.triggerCollapse() : this.triggerExpand(); } - } + }, } - ] + ], }; return { @@ -53,12 +60,12 @@ BI.BasicTreeNode = BI.inherit(BI.NodeButton, { items: [ { el: checkbox, - lgap: o.layer * BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT / 2, // 偏移公式为每一层的偏移量为节点高度的一半 + lgap: o.layer * BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT / 2, // 偏移公式为每一层的偏移量为节点高度的一半 }, { el: { type: "bi.label", - ref: function (_ref) { - self.text = _ref; + ref: _ref => { + this.text = _ref; }, textAlign: "left", whiteSpace: "nowrap", @@ -71,36 +78,36 @@ BI.BasicTreeNode = BI.inherit(BI.NodeButton, { text: o.text, value: o.value, keyword: o.keyword, - py: o.py - } + py: o.py, + }, } - ] + ], }; - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doClick: function () { + doClick() { if (this.options.selectable) { return; } - BI.BasicTreeNode.superclass.doClick.apply(this, arguments); - }, + super.doClick.apply(this, arguments); + } - setOpened: function (v) { - BI.BasicTreeNode.superclass.setOpened.apply(this, arguments); + setOpened(v) { + super.setOpened.apply(this, arguments); this.switcher.setOpened(v); - }, + } - setValue: function () { - BI.BasicTreeNode.superclass.setValue.apply(this, arguments); + setValue() { + super.setValue.apply(this, arguments); } -}); +} + -BI.shortcut("bi.tree_node", BI.BasicTreeNode); diff --git a/src/case/button/switch.js b/src/case/button/switch.js index 1ca2bd2b6..c05baa832 100644 --- a/src/case/button/switch.js +++ b/src/case/button/switch.js @@ -1,84 +1,95 @@ /** * Created by Windy on 2018/2/1. */ -BI.Switch = BI.inherit(BI.BasicButton, { - constants: { - CIRCLE_SIZE: 12 - }, +import { BasicButton } from "../../base/single/button/button.basic"; +import { shortcut } from "../../core"; - props: { +@shortcut() +export class Switch extends BasicButton { + static xtype = "bi.switch"; + static EVENT_CHANGE = "EVENT_CHANGE"; + + constants = { + CIRCLE_SIZE: 12, + }; + + props = { extraCls: "bi-switch", attributes: { - tabIndex: 1 + tabIndex: 1, }, height: 20, width: 44, - showTip: false - }, + showTip: false, + }; - render: function () { - var self = this, o = this.options, c = this.constants; - var tgap = (o.height - c.CIRCLE_SIZE) / 2; + render() { + const o = this.options, + c = this.constants; + const tgap = (o.height - c.CIRCLE_SIZE) / 2; + return { type: "bi.absolute", - ref: function () { - self.layout = this; + ref: _ref => { + this.layout = _ref; }, - items: [{ - el: { - type: "bi.text_button", - cls: "circle-button" + items: [ + { + el: { + type: "bi.text_button", + cls: "circle-button", + }, + width: 12, + height: 12, + top: tgap, + left: o.selected ? 28 : 4, }, - width: 12, - height: 12, - top: tgap, - left: o.selected ? 28 : 4 - }, { - type: "bi.label", - text: BI.i18nText("BI-Basic_Simple_Open"), - cls: "content-tip", - left: 8, - top: tgap - 2, - invisible: !(o.showTip && o.selected), - ref: function (ref) { - self.openTip = ref; - } - }, { - type: "bi.label", - text: BI.i18nText("BI-Basic_Simple_Close"), - cls: "content-tip", - right: 8, - top: tgap - 2, - invisible: !(o.showTip && !o.selected), - ref: function (ref) { - self.closeTip = ref; + { + type: "bi.label", + text: BI.i18nText("BI-Basic_Simple_Open"), + cls: "content-tip", + left: 8, + top: tgap - 2, + invisible: !(o.showTip && o.selected), + ref: _ref => { + this.openTip = _ref; + }, + }, + { + type: "bi.label", + text: BI.i18nText("BI-Basic_Simple_Close"), + cls: "content-tip", + right: 8, + top: tgap - 2, + invisible: !(o.showTip && !o.selected), + ref: _ref => { + this.closeTip = _ref; + }, } - }] + ], }; - }, + } - _setEnable: function (enable) { - BI.Switch.superclass._setEnable.apply(this, arguments); + _setEnable(enable) { + super._setEnable.apply(this, arguments); if (enable === true) { this.element.attr("tabIndex", 1); } else if (enable === false) { this.element.removeAttr("tabIndex"); } - }, + } - setSelected: function (v) { - BI.Switch.superclass.setSelected.apply(this, arguments); + setSelected(v) { + super.setSelected.apply(this, arguments); this.layout.attr("items")[0].left = v ? 28 : 4; this.layout.resize(); this.options.showTip && this.openTip.setVisible(v); this.options.showTip && this.closeTip.setVisible(!v); - }, + } - doClick: function () { - BI.Switch.superclass.doClick.apply(this, arguments); - this.fireEvent(BI.Switch.EVENT_CHANGE, this.isSelected()); + doClick() { + super.doClick.apply(this, arguments); + this.fireEvent(Switch.EVENT_CHANGE, this.isSelected()); } -}); -BI.Switch.EVENT_CHANGE = "EVENT_CHANGE"; -BI.shortcut("bi.switch", BI.Switch); +} diff --git a/src/case/button/treeitem/item.first.treeleaf.js b/src/case/button/treeitem/item.first.treeleaf.js index 52663de39..d09376bc0 100644 --- a/src/case/button/treeitem/item.first.treeleaf.js +++ b/src/case/button/treeitem/item.first.treeleaf.js @@ -1,20 +1,27 @@ -BI.FirstTreeLeafItem = BI.inherit(BI.BasicButton, { - _defaultConfig: function () { - return BI.extend(BI.FirstTreeLeafItem.superclass._defaultConfig.apply(this, arguments), { +import { BasicButton } from "../../../base/single/button/button.basic"; +import { shortcut, extend, createWidget } from "../../../core"; + +@shortcut() +export class FirstTreeLeafItem extends BasicButton { + static xtype = "bi.first_tree_leaf_item"; + + _defaultConfig() { + return extend(super._defaultConfig(arguments), { extraCls: "bi-first-tree-leaf-item bi-list-item-active", logic: { - dynamic: false + dynamic: false, }, id: "", pId: "", layer: 0, - height: 24 + height: 24, }); - }, - _init: function () { - BI.FirstTreeLeafItem.superclass._init.apply(this, arguments); - var o = this.options; - this.text = BI.createWidget({ + } + + _init() { + super._init.apply(this, arguments); + const o = this.options; + this.text = createWidget({ type: "bi.label", textAlign: "left", whiteSpace: "nowrap", @@ -24,76 +31,75 @@ BI.FirstTreeLeafItem = BI.inherit(BI.BasicButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword + keyword: o.keyword, }); - var type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); - var items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, ((o.layer === 0) ? "" : { + const type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); + const items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, ((o.layer === 0) ? "" : { width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT / 2, el: { type: "bi.layout", cls: (o.pNode && o.pNode.isLastNode) ? "" : this._getBaseLineCls(), width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT / 2, - height: o.height - } + height: o.height, + }, }), { width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, el: { type: "bi.layout", cls: this._getFirstLineCls(), width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, - height: o.height - } + height: o.height, + }, }, { - el: this.text + el: this.text, }); - BI.createWidget(BI.extend({ - element: this + createWidget(extend({ + element: this, }, BI.LogicFactory.createLogic(type, BI.extend(o.logic, { - items: items + items, })))); - }, + } - _getBaseLineCls: function () { + _getBaseLineCls() { switch (BI.STYLE_CONSTANTS.LINK_LINE_TYPE) { - case "solid": - return "base-solid-line-conn-background"; - default: - return "base-line-conn-background"; + case "solid": + return "base-solid-line-conn-background"; + default: + return "base-line-conn-background"; } - }, + } - _getFirstLineCls: function () { + _getFirstLineCls() { switch (BI.STYLE_CONSTANTS.LINK_LINE_TYPE) { - case "solid": - return "first-solid-line-conn-background"; - default: - return "first-line-conn-background"; + case "solid": + return "first-solid-line-conn-background"; + default: + return "first-line-conn-background"; } - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doHighLight: function () { - this.text.doHighLight.apply(this.text, arguments); - }, + doHighLight() { + this.text.doHighLight(...arguments); + } - unHighLight: function () { - this.text.unHighLight.apply(this.text, arguments); - }, + unHighLight() { + this.text.unHighLight(...arguments); + } - getId: function () { + getId() { return this.options.id; - }, + } - getPId: function () { + getPId() { return this.options.pId; } -}); +} -BI.shortcut("bi.first_tree_leaf_item", BI.FirstTreeLeafItem); \ No newline at end of file diff --git a/src/case/button/treeitem/item.icon.treeleaf.js b/src/case/button/treeitem/item.icon.treeleaf.js index 92fd5e348..280270774 100644 --- a/src/case/button/treeitem/item.icon.treeleaf.js +++ b/src/case/button/treeitem/item.icon.treeleaf.js @@ -1,33 +1,39 @@ -BI.IconTreeLeafItem = BI.inherit(BI.BasicButton, { - _defaultConfig: function () { - return BI.extend(BI.IconTreeLeafItem.superclass._defaultConfig.apply(this, arguments), { +import { BasicButton } from "../../../base/single/button/button.basic"; +import { shortcut, extend, createWidget } from "../../../core"; + +@shortcut() +export class IconTreeLeafItem extends BasicButton { + static xtype = "bi.icon_tree_leaf_item"; + + _defaultConfig() { + return extend(super._defaultConfig(arguments), { extraCls: "bi-icon-tree-leaf-item bi-list-item-active", logic: { - dynamic: false + dynamic: false, }, height: 24, iconWidth: 16, iconHeight: 16, - iconCls: "" + iconCls: "", }); - }, + } - _init: function () { - BI.IconTreeLeafItem.superclass._init.apply(this, arguments); - var self = this, o = this.options; + _init() { + super._init.apply(this, arguments); + const o = this.options; - var icon = BI.createWidget({ + const icon = createWidget({ type: "bi.center_adapt", width: 24, cls: o.iconCls, items: [{ type: "bi.icon", width: o.iconWidth, - height: o.iconHeight - }] + height: o.iconHeight, + }], }); - this.text = BI.createWidget({ + this.text = createWidget({ type: "bi.label", textAlign: "left", whiteSpace: "nowrap", @@ -37,46 +43,44 @@ BI.IconTreeLeafItem = BI.inherit(BI.BasicButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword + keyword: o.keyword, }); - var type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); - var items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { + const type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); + const items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { width: 16, - el: icon + el: icon, }, { - el: this.text + el: this.text, }); - BI.createWidget(BI.extend({ - element: this + createWidget(BI.extend({ + element: this, }, BI.LogicFactory.createLogic(type, BI.extend(o.logic, { - items: items, - hgap: 5 + items, + hgap: 5, })))); - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doHighLight: function () { - this.text.doHighLight.apply(this.text, arguments); - }, + doHighLight() { + this.text.doHighLight(...arguments); + } - unHighLight: function () { - this.text.unHighLight.apply(this.text, arguments); - }, + unHighLight() { + this.text.unHighLight(...arguments); + } - getId: function () { + getId() { return this.options.id; - }, + } - getPId: function () { + getPId() { return this.options.pId; } -}); - -BI.shortcut("bi.icon_tree_leaf_item", BI.IconTreeLeafItem); \ No newline at end of file +} diff --git a/src/case/button/treeitem/item.last.treeleaf.js b/src/case/button/treeitem/item.last.treeleaf.js index 76449063e..887b95a2f 100644 --- a/src/case/button/treeitem/item.last.treeleaf.js +++ b/src/case/button/treeitem/item.last.treeleaf.js @@ -1,20 +1,27 @@ -BI.LastTreeLeafItem = BI.inherit(BI.BasicButton, { - _defaultConfig: function () { - return BI.extend(BI.LastTreeLeafItem.superclass._defaultConfig.apply(this, arguments), { +import { BasicButton } from "../../../base/single/button/button.basic"; +import { shortcut, extend, createWidget } from "../../../core"; + +@shortcut() +export class LastTreeLeafItem extends BasicButton { + static xtype = "bi.last_tree_leaf_item"; + + _defaultConfig() { + return extend(super._defaultConfig(arguments), { extraCls: "bi-last-tree-leaf-item bi-list-item-active", logic: { - dynamic: false + dynamic: false, }, id: "", pId: "", layer: 0, - height: 24 + height: 24, }); - }, - _init: function () { - BI.LastTreeLeafItem.superclass._init.apply(this, arguments); - var o = this.options; - this.text = BI.createWidget({ + } + + _init() { + super._init.apply(this, arguments); + const o = this.options; + this.text = createWidget({ type: "bi.label", textAlign: "left", whiteSpace: "nowrap", @@ -24,76 +31,75 @@ BI.LastTreeLeafItem = BI.inherit(BI.BasicButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword + keyword: o.keyword, }); - var type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); - var items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, ((o.layer === 0) ? "" : { + const type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); + const items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, ((o.layer === 0) ? "" : { width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT / 2, el: { type: "bi.layout", cls: (o.pNode && o.pNode.isLastNode) ? "" : this._getBaseLineCls(), width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT / 2, - height: o.height - } + height: o.height, + }, }), { width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, el: { type: "bi.layout", cls: this._getLastLineCls(), width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, - height: o.height - } + height: o.height, + }, }, { - el: this.text + el: this.text, }); - BI.createWidget(BI.extend({ - element: this - }, BI.LogicFactory.createLogic(type, BI.extend(o.logic, { - items: items + createWidget(BI.extend({ + element: this, + }, BI.LogicFactory.createLogic(type, extend(o.logic, { + items, })))); - }, + } - _getBaseLineCls: function () { + _getBaseLineCls() { switch (BI.STYLE_CONSTANTS.LINK_LINE_TYPE) { - case "solid": - return "base-solid-line-conn-background"; - default: - return "base-line-conn-background"; + case "solid": + return "base-solid-line-conn-background"; + default: + return "base-line-conn-background"; } - }, + } - _getLastLineCls: function () { + _getLastLineCls() { switch (BI.STYLE_CONSTANTS.LINK_LINE_TYPE) { - case "solid": - return "last-solid-line-conn-background"; - default: - return "last-line-conn-background"; + case "solid": + return "last-solid-line-conn-background"; + default: + return "last-line-conn-background"; } - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doHighLight: function () { - this.text.doHighLight.apply(this.text, arguments); - }, + doHighLight() { + this.text.doHighLight(...arguments); + } - unHighLight: function () { - this.text.unHighLight.apply(this.text, arguments); - }, + unHighLight() { + this.text.unHighLight(...arguments); + } - getId: function () { + getId() { return this.options.id; - }, + } - getPId: function () { + getPId() { return this.options.pId; } -}); +} -BI.shortcut("bi.last_tree_leaf_item", BI.LastTreeLeafItem); \ No newline at end of file diff --git a/src/case/button/treeitem/item.mid.treeleaf.js b/src/case/button/treeitem/item.mid.treeleaf.js index 58af36e4e..69e7bee6b 100644 --- a/src/case/button/treeitem/item.mid.treeleaf.js +++ b/src/case/button/treeitem/item.mid.treeleaf.js @@ -1,20 +1,27 @@ -BI.MidTreeLeafItem = BI.inherit(BI.BasicButton, { - _defaultConfig: function () { - return BI.extend(BI.MidTreeLeafItem.superclass._defaultConfig.apply(this, arguments), { +import { BasicButton } from "../../../base/single/button/button.basic"; +import { shortcut, extend, createWidget } from "../../../core"; + +@shortcut() +export class MidTreeLeafItem extends BasicButton { + static xtype = "bi.mid_tree_leaf_item"; + + _defaultConfig() { + return extend(super._defaultConfig(arguments), { extraCls: "bi-mid-tree-leaf-item bi-list-item-active", logic: { - dynamic: false + dynamic: false, }, id: "", pId: "", layer: 0, - height: 24 + height: 24, }); - }, - _init: function () { - BI.MidTreeLeafItem.superclass._init.apply(this, arguments); - var o = this.options; - this.text = BI.createWidget({ + } + + _init() { + super._init.apply(this, arguments); + const o = this.options; + this.text = createWidget({ type: "bi.label", textAlign: "left", whiteSpace: "nowrap", @@ -24,76 +31,75 @@ BI.MidTreeLeafItem = BI.inherit(BI.BasicButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword + keyword: o.keyword, }); - var type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); - var items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, ((o.layer === 0) ? "" : { + const type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); + const items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, ((o.layer === 0) ? "" : { width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT / 2, el: { type: "bi.layout", cls: (o.pNode && o.pNode.isLastNode) ? "" : this._getBaseLineCls(), width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT / 2, - height: o.height - } + height: o.height, + }, }), { width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, el: { type: "bi.layout", cls: this._getMidLineCls(), width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, - height: o.height - } + height: o.height, + }, }, { - el: this.text + el: this.text, }); - BI.createWidget(BI.extend({ - element: this - }, BI.LogicFactory.createLogic(type, BI.extend(o.logic, { - items: items + createWidget(extend({ + element: this, + }, BI.LogicFactory.createLogic(type, extend(o.logic, { + items, })))); - }, + } - _getBaseLineCls: function () { + _getBaseLineCls() { switch (BI.STYLE_CONSTANTS.LINK_LINE_TYPE) { - case "solid": - return "base-solid-line-conn-background"; - default: - return "base-line-conn-background"; + case "solid": + return "base-solid-line-conn-background"; + default: + return "base-line-conn-background"; } - }, + } - _getMidLineCls: function () { + _getMidLineCls() { switch (BI.STYLE_CONSTANTS.LINK_LINE_TYPE) { - case "solid": - return "mid-solid-line-conn-background"; - default: - return "mid-line-conn-background"; + case "solid": + return "mid-solid-line-conn-background"; + default: + return "mid-line-conn-background"; } - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark () { + this.text.unRedMark(...arguments); + } - doHighLight: function () { - this.text.doHighLight.apply(this.text, arguments); - }, + doHighLight() { + this.text.doHighLight(...arguments); + } - unHighLight: function () { - this.text.unHighLight.apply(this.text, arguments); - }, + unHighLight() { + this.text.unHighLight(...arguments); + } - getId: function () { + getId() { return this.options.id; - }, + } - getPId: function () { + getPId() { return this.options.pId; } -}); +} -BI.shortcut("bi.mid_tree_leaf_item", BI.MidTreeLeafItem); \ No newline at end of file diff --git a/src/case/button/treeitem/item.multilayer.icon.treeleaf.js b/src/case/button/treeitem/item.multilayer.icon.treeleaf.js index 363a348c0..2d5e043fb 100644 --- a/src/case/button/treeitem/item.multilayer.icon.treeleaf.js +++ b/src/case/button/treeitem/item.multilayer.icon.treeleaf.js @@ -1,22 +1,29 @@ +import { BasicButton } from "../../../base/single/button/button.basic"; +import { shortcut, extend, createWidget, Controller, makeArray } from "../../../core"; + /** * @class BI.MultiLayerIconTreeLeafItem * @extends BI.BasicButton */ -BI.MultiLayerIconTreeLeafItem = BI.inherit(BI.BasicButton, { - _defaultConfig: function () { - return BI.extend(BI.MultiLayerIconTreeLeafItem.superclass._defaultConfig.apply(this, arguments), { +@shortcut() +export class MultiLayerIconTreeLeafItem extends BasicButton { + static xtype = "bi.multilayer_icon_tree_leaf_item"; + + _defaultConfig() { + return extend(super._defaultConfig(arguments), { extraCls: "bi-multilayer-icon-tree-leaf-item bi-list-item-active", layer: 0, height: 24, iconCls: "", iconHeight: 16, - iconWidth: 16 + iconWidth: 16, }); - }, - _init: function () { - BI.MultiLayerIconTreeLeafItem.superclass._init.apply(this, arguments); - var self = this, o = this.options; - this.item = BI.createWidget({ + } + + _init() { + super._init.apply(this, arguments); + const o = this.options; + this.item = createWidget({ type: "bi.icon_tree_leaf_item", cls: "bi-list-item-none", iconCls: o.iconCls, @@ -30,69 +37,70 @@ BI.MultiLayerIconTreeLeafItem = BI.inherit(BI.BasicButton, { py: o.py, keyword: o.keyword, iconWidth: o.iconWidth, - iconHeight: o.iconHeight + iconHeight: o.iconHeight, }); - this.item.on(BI.Controller.EVENT_CHANGE, function (type) { + this.item.on(Controller.EVENT_CHANGE, (...args) => { + const [type] = args; if (type === BI.Events.CLICK) {// 本身实现click功能 return; } - self.fireEvent(BI.Controller.EVENT_CHANGE, arguments); + this.fireEvent(Controller.EVENT_CHANGE, args); }); - var items = []; - BI.count(0, o.layer, function () { + const items = []; + BI.count(0, o.layer, () => { items.push({ type: "bi.layout", width: 15, - height: o.height + height: o.height, }); }); items.push(this.item); - BI.createWidget({ + createWidget({ type: "bi.horizontal_adapt", element: this, - columnSize: BI.makeArray(o.layer, 15), - items: items + columnSize: makeArray(o.layer, 15), + items, }); - }, - - doRedMark: function () { - this.item.doRedMark.apply(this.item, arguments); - }, + } - unRedMark: function () { - this.item.unRedMark.apply(this.item, arguments); - }, + doRedMark () { + this.item.doRedMark(...arguments); + } - doHighLight: function () { - this.item.doHighLight.apply(this.item, arguments); - }, + unRedMark () { + this.item.unRedMark(...arguments); + } + + doHighLight() { + this.item.doHighLight(...arguments); + } - unHighLight: function () { - this.item.unHighLight.apply(this.item, arguments); - }, + unHighLight () { + this.item.unHighLight(...arguments); + } - getId: function () { + getId () { return this.options.id; - }, + } - getPId: function () { + getPId () { return this.options.pId; - }, + } - doClick: function () { + doClick () { BI.MultiLayerIconTreeLeafItem.superclass.doClick.apply(this, arguments); this.item.setSelected(this.isSelected()); - }, + } - setSelected: function (v) { + setSelected(v) { BI.MultiLayerIconTreeLeafItem.superclass.setSelected.apply(this, arguments); this.item.setSelected(v); - }, + } - getValue: function () { + getValue() { return this.options.value; } -}); +} + -BI.shortcut("bi.multilayer_icon_tree_leaf_item", BI.MultiLayerIconTreeLeafItem); diff --git a/src/case/button/treeitem/item.root.treeleaf.js b/src/case/button/treeitem/item.root.treeleaf.js index f4637afdc..f6fdd9c81 100644 --- a/src/case/button/treeitem/item.root.treeleaf.js +++ b/src/case/button/treeitem/item.root.treeleaf.js @@ -1,22 +1,27 @@ -BI.RootTreeLeafItem = BI.inherit(BI.BasicButton, { - props: { +import { BasicButton } from "../../../base/single/button/button.basic"; +import { shortcut, extend } from "../../../core"; + +@shortcut() +export class RootTreeLeafItem extends BasicButton { + static xtype = "bi.root_tree_leaf_item"; + + props = { baseCls: "bi-root-tree-leaf-item bi-list-item-active", logic: { - dynamic: false + dynamic: false, }, id: "", pId: "", layer: 0, - height: 24 - }, + height: 24, + } - render: function () { - var self = this; - var o = this.options; - var text = { + render() { + const o = this.options; + const text = { type: "bi.label", - ref: function (_ref) { - self.text = _ref; + ref: _ref => { + this.text = _ref; }, textAlign: "left", whiteSpace: "nowrap", @@ -26,49 +31,48 @@ BI.RootTreeLeafItem = BI.inherit(BI.BasicButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword + keyword: o.keyword, }; - var type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); - var items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { + const type = BI.LogicFactory.createLogicTypeByDirection(BI.Direction.Left); + const items = BI.LogicFactory.createLogicItemsByDirection(BI.Direction.Left, { width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, el: { type: "bi.layout", width: BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT, - height: o.height - } + height: o.height, + }, }, { - el: text + el: text, }); - return BI.LogicFactory.createLogic(type, BI.extend(o.logic, { - items: items + return BI.LogicFactory.createLogic(type, extend(o.logic, { + items, })); - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doHighLight: function () { - this.text.doHighLight.apply(this.text, arguments); - }, + doHighLight() { + this.text.doHighLight(...arguments); + } - unHighLight: function () { - this.text.unHighLight.apply(this.text, arguments); - }, + unHighLight() { + this.text.unHighLight(...arguments); + } - getId: function () { + getId() { return this.options.id; - }, + } - getPId: function () { + getPId() { return this.options.pId; } -}); +} -BI.shortcut("bi.root_tree_leaf_item", BI.RootTreeLeafItem); diff --git a/src/case/button/treeitem/item.treetextleaf.js b/src/case/button/treeitem/item.treetextleaf.js index 872663fd0..2dca402e8 100644 --- a/src/case/button/treeitem/item.treetextleaf.js +++ b/src/case/button/treeitem/item.treetextleaf.js @@ -1,25 +1,32 @@ +import { BasicButton } from "../../../base/single/button/button.basic"; +import { shortcut, extend, createWidget } from "../../../core"; + /** * 树叶子节点 * Created by GUY on 2015/9/6. * @class BI.TreeTextLeafItem * @extends BI.BasicButton */ -BI.TreeTextLeafItem = BI.inherit(BI.BasicButton, { - _defaultConfig: function () { - return BI.extend(BI.TreeTextLeafItem.superclass._defaultConfig.apply(this, arguments), { +@shortcut() +export class TreeTextLeafItem extends BasicButton { + static xtype = "bi.tree_text_leaf_item"; + + _defaultConfig() { + return extend(super._defaultConfig.apply(this, arguments), { extraCls: "bi-tree-text-leaf-item bi-list-item-active", id: "", pId: "", height: 24, hgap: 0, lgap: 0, - rgap: 0 + rgap: 0, }); - }, - _init: function () { - BI.TreeTextLeafItem.superclass._init.apply(this, arguments); - var self = this, o = this.options; - this.text = BI.createWidget({ + } + + _init() { + super._init.apply(this, arguments); + const o = this.options; + this.text = createWidget({ type: "bi.label", textAlign: "left", whiteSpace: "nowrap", @@ -31,40 +38,39 @@ BI.TreeTextLeafItem = BI.inherit(BI.BasicButton, { text: o.text, value: o.value, py: o.py, - keyword: o.keyword + keyword: o.keyword, }); - BI.createWidget({ + createWidget({ type: "bi.htape", element: this, items: [{ - el: this.text - }] + el: this.text, + }], }); - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - doHighLight: function () { - this.text.doHighLight.apply(this.text, arguments); - }, + doHighLight() { + this.text.doHighLight(...arguments); + } - unHighLight: function () { - this.text.unHighLight.apply(this.text, arguments); - }, + unHighLight() { + this.text.unHighLight(...arguments); + } - getId: function () { + getId() { return this.options.id; - }, + } - getPId: function () { + getPId() { return this.options.pId; } -}); +} -BI.shortcut("bi.tree_text_leaf_item", BI.TreeTextLeafItem); diff --git a/src/case/button/treeitem/treeitem.js b/src/case/button/treeitem/treeitem.js index 4ab512a29..c6235facd 100644 --- a/src/case/button/treeitem/treeitem.js +++ b/src/case/button/treeitem/treeitem.js @@ -1,8 +1,15 @@ -BI.BasicTreeItem = BI.inherit(BI.NodeButton, { - _defaultConfig: function () { - var conf = BI.BasicTreeItem.superclass._defaultConfig.apply(this, arguments); - return BI.extend(conf, { - baseCls: (conf.baseCls || "") + " bi-tree-item bi-list-item-active", +import { NodeButton } from "../../../base/single/button/button.node"; +import { shortcut, extend } from "../../../core"; + +@shortcut() +export class BasicTreeItem extends NodeButton { + static xtype = "bi.tree_item"; + + _defaultConfig() { + const conf = super._defaultConfig(arguments); + + return extend(conf, { + baseCls: `${conf.baseCls || ""} bi-tree-item bi-list-item-active`, id: "", pId: "", height: 24, @@ -10,10 +17,10 @@ BI.BasicTreeItem = BI.inherit(BI.NodeButton, { isFirstNode: false, isLastNode: false, }); - }, + } - render: function () { - var self = this, o = this.options; + render() { + const o = this.options; return { type: "bi.vertical_adapt", @@ -26,13 +33,13 @@ BI.BasicTreeItem = BI.inherit(BI.NodeButton, { width: o.height, cls: this.getLineCls(), }, - lgap: o.layer * BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT / 2, // 偏移公式为每一层的偏移量为节点高度的一半 + lgap: o.layer * BI.SIZE_CONSANTS.LIST_ITEM_HEIGHT / 2, // 偏移公式为每一层的偏移量为节点高度的一半 }, { el: { type: "bi.label", - ref: function (_ref) { - self.text = _ref; + ref: _ref => { + this.text = _ref; }, textAlign: "left", whiteSpace: "nowrap", @@ -45,15 +52,15 @@ BI.BasicTreeItem = BI.inherit(BI.NodeButton, { text: o.text, value: o.value, keyword: o.keyword, - py: o.py + py: o.py, }, } - ] + ], }; - }, + } - getLineCls: function () { - var options = this.options; + getLineCls() { + const options = this.options; if (options.layer === 0 && options.isFirstNode && options.isLastNode) { return ""; } else if (options.layer === 0 && options.isFirstNode) { @@ -63,24 +70,21 @@ BI.BasicTreeItem = BI.inherit(BI.NodeButton, { } else { return BI.STYLE_CONSTANTS.LINK_LINE_TYPE === "solid" ? "tree-mid-solid-line-conn-background" : "mid-line-conn-background"; } - }, + } - doRedMark: function () { - this.text.doRedMark.apply(this.text, arguments); - }, + doRedMark() { + this.text.doRedMark(...arguments); + } - unRedMark: function () { - this.text.unRedMark.apply(this.text, arguments); - }, + unRedMark() { + this.text.unRedMark(...arguments); + } - getId: function () { + getId() { return this.options.id; - }, + } - getPId: function () { + getPId() { return this.options.pId; } - -}); - -BI.shortcut("bi.tree_item", BI.BasicTreeItem); +} diff --git a/src/case/index.js b/src/case/index.js new file mode 100644 index 000000000..5e8b11baf --- /dev/null +++ b/src/case/index.js @@ -0,0 +1,7 @@ +import * as button from "./button"; + +Object.assign(BI, { + ...button, +}); + +export * from "./button";