From 868c0d1a4087bc3dd675e1d490324b2175964264 Mon Sep 17 00:00:00 2001 From: guy Date: Fri, 28 Oct 2022 18:38:53 +0800 Subject: [PATCH] =?UTF-8?q?feature:=20=E5=A2=9E=E5=8A=A0instruction?= =?UTF-8?q?=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/base/single/instruction/instruction.js | 75 ++++++++++++++++++++++ src/less/base/single/instruction.less | 31 +++++++++ src/less/base/single/tip/tip.bubble.less | 10 +-- 3 files changed, 112 insertions(+), 4 deletions(-) create mode 100644 src/base/single/instruction/instruction.js create mode 100644 src/less/base/single/instruction.less diff --git a/src/base/single/instruction/instruction.js b/src/base/single/instruction/instruction.js new file mode 100644 index 000000000..f5db6bb09 --- /dev/null +++ b/src/base/single/instruction/instruction.js @@ -0,0 +1,75 @@ +BI.Instruction = BI.inherit(BI.Widget, { + _defaultConfig: function () { + var conf = BI.Link.superclass._defaultConfig.apply(this, arguments); + return BI.extend(conf, { + baseCls: (conf.baseCls || "") + " bi-instruction", + height: 20, + level: "error", + textAlign: "left", + whiteSpace: "nowrap" + }); + }, + + render: function () { + var self = this, o = this.options; + + return { + type: "bi.label", + ref: function (_ref) { + self.text = _ref; + }, + cls: "instruction-" + o.level, + textAlign: o.textAlign, + whiteSpace: o.whiteSpace, + textHeight: o.height, + height: o.height, + hgap: o.hgap, + rgap: o.rgap, + lgap: o.lgap, + vgap: o.vgap, + text: o.text, + keyword: o.keyword, + value: o.value, + py: o.py + }; + }, + + doRedMark: function () { + this.text.doRedMark.apply(this.text, arguments); + }, + + unRedMark: function () { + this.text.unRedMark.apply(this.text, arguments); + }, + + doHighLight: function () { + this.text.doHighLight.apply(this.text, arguments); + }, + + unHighLight: function () { + this.text.unHighLight.apply(this.text, arguments); + }, + + setText: function (v) { + this.options.text = v; + this.text.setText(v); + }, + + getText: function () { + return this.options.text; + }, + + setStyle: function (css) { + this.text.setStyle(css); + }, + + setValue: function (v) { + this.text.setValue(v); + }, + + getValue: function () { + this.text.getValue(); + } +}); + +BI.shortcut("bi.instruction", BI.Instruction); diff --git a/src/less/base/single/instruction.less b/src/less/base/single/instruction.less new file mode 100644 index 000000000..51b9b0af4 --- /dev/null +++ b/src/less/base/single/instruction.less @@ -0,0 +1,31 @@ +@import "../../index.less"; + +.bi-instruction { + .border-radius(2px); + + &.instruction-error{ + background: @color-bi-background-bubble-error; + color: @color-bi-text-failure; + } + + &.instruction-common{ + background: @color-bi-background-bubble-normal; + color: @color-bi-text-highlight; + } + + &.instruction-success{ + background: @color-bi-background-bubble-success; + color: @color-bi-text-success; + } + + &.instruction-warning{ + background: @color-bi-background-bubble-warning; + color: @color-bi-text-redmark; + } +} + +.bi-theme-dark { + .bi-instruction.instruction-error { + background: @color-bi-background-bubble-error-theme-dark; + } +} diff --git a/src/less/base/single/tip/tip.bubble.less b/src/less/base/single/tip/tip.bubble.less index e18e3ffc9..eb151aec4 100644 --- a/src/less/base/single/tip/tip.bubble.less +++ b/src/less/base/single/tip/tip.bubble.less @@ -9,10 +9,6 @@ color: @color-bi-text-failure; } - .bi-theme-dark &.bubble-error { - background: @color-bi-background-bubble-error-theme-dark; - } - &.bubble-common{ background: @color-bi-background-bubble-normal; color: @color-bi-text-highlight; @@ -28,3 +24,9 @@ color: @color-bi-text-redmark; } } + +.bi-theme-dark { + .bi-bubble.bubble-error { + background: @color-bi-background-bubble-error-theme-dark; + } +}