From a8cd5318f7d40e24bea1137af1b471999b1b85c5 Mon Sep 17 00:00:00 2001 From: Kobi Date: Tue, 22 Jun 2021 11:21:56 +0800 Subject: [PATCH] =?UTF-8?q?KERNEL-7828=20=E8=A1=A5=E5=85=85=E5=A3=B0?= =?UTF-8?q?=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- typescript/base/combination/combo.ts | 27 ++++++++++++++++ typescript/index.ts | 6 ++++ .../multilayerdownlist.combo.ts | 32 +++++++++++++++++++ .../multilayerdownlist.popup.ts | 20 ++++++++++++ 4 files changed, 85 insertions(+) create mode 100644 typescript/widget/multilayerdownlist/multilayerdownlist.combo.ts create mode 100644 typescript/widget/multilayerdownlist/multilayerdownlist.popup.ts diff --git a/typescript/base/combination/combo.ts b/typescript/base/combination/combo.ts index 01f50712b..028414c82 100644 --- a/typescript/base/combination/combo.ts +++ b/typescript/base/combination/combo.ts @@ -12,6 +12,33 @@ export declare class Combo extends Widget { static EVENT_BEFORE_HIDEVIEW: string; static EVENT_AFTER_HIDEVIEW: string; + props: { + trigger: 'click' | 'hover' | 'click-hover' | ''; + toggle: boolean; + direction: 'top' | 'bottom' | 'left' | 'right' | 'top,left' | 'top,right' | 'bottom,left' | 'bottom,right' | 'right,innerRight' | 'right,innerLeft' | 'innerRight' | 'innerLeft'; + logic: { + dynamic: boolean; + }, + container: any; // popupview放置的容器,默认为this.element + isDefaultInit: boolean; + destroyWhenHide: boolean; + hideWhenAnotherComboOpen: boolean; + isNeedAdjustHeight: boolean; // 是否需要高度调整 + isNeedAdjustWidth: boolean; + stopEvent: boolean; + stopPropagation: boolean; + adjustLength: number; // 调整的距离 + adjustXOffset: number; + adjustYOffset: number; + hideChecker: Function; + offsetStyle: 'left' | 'right' | 'center'; + el: any; + popup: any; + comboClass: string; + hoverClass: string; + belowMouse: boolean; + } + populate(...args: any[]): void; _setEnable(v: boolean): void; diff --git a/typescript/index.ts b/typescript/index.ts index cb559f76a..a93dcc858 100644 --- a/typescript/index.ts +++ b/typescript/index.ts @@ -104,6 +104,7 @@ import { TreeValueChooserInsertCombo } from "./component/treevaluechooser/combo. import { Radio } from "./base/single/input/radio/radio"; import { MultiLayerSelectTreePopup } from "./widget/multilayerselecttree/multilayerselecttree.popup"; import { MultiLayerSingleTreePopup } from "./widget/multilayersingletree/multilayersingletree.popup"; +import { MultiLayerDownListPopup } from "./widget/multilayerdownlist/multilayerdownlist.popup"; import { TreeView } from "./base/tree/ztree/treeview"; import { MultiTreePopup } from "./widget/multitree/multi.tree.popup"; import { SingleSelectRadioItem } from "./case/button/item.singleselect.radio"; @@ -117,6 +118,7 @@ import { ListAsyncTree } from "./base/tree/ztree/list/listasynctree"; import { AsyncTree } from "./base/tree/ztree/asynctree"; import { MultiLayerSingleTreeCombo } from "./widget/multilayersingletree/multilayersingletree.combo"; import { MultiLayerSelectTreeCombo } from "./widget/multilayerselecttree/multilayerselecttree.combo"; +import { MultiLayerDownListCombo } from "./widget/multilayerdownlist/multilayerdownlist.combo"; import { MultiTreeListCombo } from "./widget/multitree/multi.tree.list.combo"; import { MultiTreeInsertCombo } from "./widget/multitree/multi.tree.insert.combo"; import { TextValueDownListCombo } from "./widget/textvaluedownlistcombo/combo.textvaluedownlist"; @@ -224,12 +226,14 @@ export interface BI extends _func, _i18n, _base, _inject, _var, _web, _utils { TreeValueChooserInsertCombo: typeof TreeValueChooserInsertCombo; MultiLayerSelectTreePopup: typeof MultiLayerSelectTreePopup; MultiLayerSingleTreePopup: typeof MultiLayerSingleTreePopup; + MultiLayerDownListPopup: typeof MultiLayerDownListPopup; TreeView: typeof TreeView; ListTreeView: typeof ListTreeView; ListAsyncTree: typeof ListAsyncTree; AsyncTree: typeof AsyncTree; MultiLayerSingleTreeCombo: typeof MultiLayerSingleTreeCombo; MultiLayerSelectTreeCombo: typeof MultiLayerSelectTreeCombo; + MultiLayerDownListCombo: typeof MultiLayerDownListCombo; MultiTreeListCombo: typeof MultiTreeListCombo; MultiTreeInsertCombo: typeof MultiTreeInsertCombo; Decorators: typeof decorator; @@ -429,12 +433,14 @@ export { TreeValueChooserInsertCombo, MultiLayerSelectTreePopup, MultiLayerSingleTreePopup, + MultiLayerDownListPopup, TreeView, ListTreeView, ListAsyncTree, AsyncTree, MultiLayerSingleTreeCombo, MultiLayerSelectTreeCombo, + MultiLayerDownListCombo, MultiTreeListCombo, MultiTreeInsertCombo, Combo, diff --git a/typescript/widget/multilayerdownlist/multilayerdownlist.combo.ts b/typescript/widget/multilayerdownlist/multilayerdownlist.combo.ts new file mode 100644 index 000000000..87359ffe3 --- /dev/null +++ b/typescript/widget/multilayerdownlist/multilayerdownlist.combo.ts @@ -0,0 +1,32 @@ +import { Widget } from "../../core/widget"; +import { Combo } from "../../base/combination/combo"; + +export declare class MultiLayerDownListCombo extends Widget { + static xtype: string; + + static EVENT_CHANGE: string; + static EVENT_SON_VALUE_CHANGE: string; + static EVENT_BEFORE_POPUPVIEW: string; + + props: { + adjustLength: Combo['props']['adjustLength']; + direction: Combo['props']['direction']; + trigger: Combo['props']['trigger']; + container: Combo['props']['container']; + stopPropagation: Combo['props']['stopPropagation']; + el: Combo['props']['el']; + chooseType: number; + value: any; + iconCls: string; + } + + hideView(): void; + + showView(e?: Event): void; + + setValue(v: any): void; + + getValue(): T; + + populate(items: T[]): void; +} diff --git a/typescript/widget/multilayerdownlist/multilayerdownlist.popup.ts b/typescript/widget/multilayerdownlist/multilayerdownlist.popup.ts new file mode 100644 index 000000000..c8c66e2e0 --- /dev/null +++ b/typescript/widget/multilayerdownlist/multilayerdownlist.popup.ts @@ -0,0 +1,20 @@ +import { Widget } from "../../core/widget"; + +export declare class MultiLayerDownListPopup extends Widget { + static xtype: string; + + static EVENT_CHANGE: string; + static EVENT_SON_VALUE_CHANGE: string; + + props: { + items: any[]; + chooseType: number; + value: any; + } + + getValue(): T; + + setValue(v: any): void; + + populate(items: T[]): void; +}