import { ElementPropertyConfig } from '@farris/ide-property-panel'; import FdContainerBaseComponent from '../../common/containerBase/containerBase'; import { RowNode } from '@farris/ui-treetable'; import { BuilderHTMLElement } from '@farris/designer-element'; import FdSplitterPaneComponent from './fd-splitter-pane'; import { Observable } from 'rxjs'; export default class FdSplitterComponent extends FdContainerBaseComponent { /** 标识每个分栏项的key值 */ readonly splitterPaneKey: string; /** 分栏项实例 */ splitterPaneComponents: FdSplitterPaneComponent[]; /** 拖拽接收控件的分栏项 */ draggingOverPaneId: string; constructor(component: any, options: any); getDefaultSchema(): any; getTemplateName(): string; init(): void; render(): any; attach(element: any): any; /** * 组装属性面板配置数据 * @returns ElementPropertyConfig[] */ getPropertyConfig(): ElementPropertyConfig[]; /** * 组装右键菜单 * @param rowNode 组件在控件树上对应的行数据 */ resolveContextMenuConfig(rowNode: RowNode, parentRowNode: RowNode): any; canAccepts(sourceElement: BuilderHTMLElement, targetElement: BuilderHTMLElement): boolean; checkCanMoveComponent(): boolean; checkCanDeleteComponent(): boolean; /** * 判断在可视化区域中是否隐藏容器间距和线条 */ hideNestedPaddingInDesginerView(): boolean; /** * 复写拖拽接收控件事件:用于记录当前接收控件的是哪一个SplitterPane * @param el 移动的源DOM结构 */ onAcceptNewChildElement(el: BuilderHTMLElement, targetPosition: number): Observable; }