도구 상자 클래스
툴박스 클래스입니다. 툴박스의 DOM을 만듭니다.
서명:
export declare class Toolbox extends DeleteArea implements IAutoHideable, IKeyboardAccessible, IStyleable, IToolbox, IFocusableNode
Extends: DeleteArea
구현: IAutoHideable, IKeyboardAccessible, IStyleable, IToolbox, IFocusableNode
생성자
생성자 | 수정자 | 설명 |
---|---|---|
(constructor)(workspace) | Toolbox 클래스의 새 인스턴스를 생성합니다. |
속성
속성 | 수정자 | 유형 | 설명 |
---|---|---|---|
boundEvents_ | protected |
browserEvents.Data[] | 이벤트 핸들러를 바인딩 해제하는 데 필요한 정보를 보유하는 배열입니다. 삭제에 사용됩니다. 예: [[node, name, func], [node, name, func]] |
contents | protected |
Map<string, IToolboxItem> | ID에서 해당 도구 상자 항목으로의 매핑입니다. |
contentsDiv_ | protected |
HTMLDivElement | null | 툴박스 콘텐츠의 HTML 컨테이너입니다. |
height_ | protected |
숫자 | 도구 상자의 높이입니다. |
HtmlDiv | HTMLDivElement | null | 툴박스의 HTML 컨테이너입니다. | |
id | 문자열 | ComponentManager에 등록하는 데 사용되는 이 구성요소의 고유 ID입니다. | |
isVisible_ | protected |
부울 | 도구 상자가 표시되는지 여부입니다. |
previouslySelectedItem_ | protected |
ISelectableToolboxItem | null | 이전에 선택한 항목입니다. |
RTL | 부울 | ||
selectedItem_ | protected |
ISelectableToolboxItem | null | 현재 선택된 항목입니다. |
toolboxDef_ | protected |
toolbox.ToolboxInfo | |
toolboxPosition | toolbox.Position | ||
width_ | protected |
숫자 | 도구 상자의 너비입니다. |
workspace_ |
|
WorkspaceSvg | 이 도구 상자가 있는 작업공간입니다. |
메서드
메서드 | 수정자 | 설명 |
---|---|---|
addToolboxItem_(toolboxItem) | protected |
툴박스에 항목을 추가합니다. |
attachEvents_(container, contentsContainer) | protected |
툴박스 컨테이너 div에 이벤트 리스너를 추가합니다. |
autoHide(onlyClosePopups) | 구성요소를 숨깁니다. WorkspaceSvg.hideChaff에서 호출됩니다. | |
canBeFocused() | IFocusableNode.canBeFocused를 참고하세요. | |
clearSelection() | 이전에 선택한 항목의 강조 표시를 해제합니다. | |
createContainer_() | protected |
툴박스의 컨테이너 div를 만듭니다. |
createContentsContainer_() | protected |
도구 상자의 모든 콘텐츠에 대한 컨테이너를 만듭니다. |
createDom_(workspace) | protected |
도구 상자의 DOM을 만듭니다. |
createFlyout_() | protected |
도구 상자 레이아웃을 기반으로 플라이아웃을 만듭니다. |
deselectItem_(item) | protected |
지정된 항목을 선택 해제하고, 선택 해제됨으로 표시하고, aria 상태를 업데이트합니다. |
dispose() | 이 도구 상자를 처리합니다. | |
getClientRect() | 표시 영역을 기준으로 드래그 타겟 영역의 경계 직사각형을 픽셀 단위로 반환합니다. | |
getFlyout() | 도구 상자 플라이아웃을 가져옵니다. | |
getFocusableElement() | IFocusableNode.getFocusableElement를 참고하세요. | |
getFocusableTree() | IFocusableNode.getFocusableTree를 참고하세요. | |
getHeight() | 도구 상자의 높이를 가져옵니다. | |
getNestedTrees() | IFocusableTree.getNestedTrees를 참고하세요. | |
getPreviouslySelectedItem() | 이전에 선택한 항목을 가져옵니다. | |
getRestoredFocusableNode(previousNode) | IFocusableTree.getRestoredFocusableNode를 참고하세요. | |
getRootFocusableNode() | IFocusableTree.getRootFocusableNode를 참고하세요. | |
getSelectedItem() | 선택된 항목을 가져옵니다. | |
getToolboxItemById(id) | 지정된 ID의 도구 상자 항목을 가져옵니다. | |
getToolboxItems() | 도구 상자의 항목을 가져옵니다. | |
getWidth() | 도구 상자의 너비를 가져옵니다. | |
getWorkspace() | 툴박스의 작업공간을 가져옵니다. | |
init() | 도구 상자를 초기화합니다. | |
isHorizontal() | 툴박스가 가로인지 여부를 가져옵니다. | |
lookUpFocusableNode(id) | IFocusableTree.lookUpFocusableNode를 참고하세요. | |
onClick_(e) | protected |
도구 상자 또는 도구 상자 항목을 클릭할 때의 클릭 이벤트를 처리합니다. |
onDragEnter(_dragElement) | 블록 또는 풍선이 있는 커서가 이 드래그 타겟에 들어갈 때 처리합니다. | |
onDragExit(_dragElement) | 블록이나 풍선이 있는 커서가 이 드래그 타겟에서 나갈 때 처리합니다. | |
onDrop(_dragElement) | 블록이나 버블이 이 구성요소에 드롭될 때 처리합니다. 여기에서 삭제를 처리하면 안 됩니다. | |
onKeyDown_(e) | protected |
툴박스의 키 다운 이벤트를 처리합니다. |
onNodeBlur() | IFocusableNode.onNodeBlur를 참고하세요. | |
onNodeFocus() | IFocusableNode.onNodeFocus를 참고하세요. | |
onShortcut(_shortcut) | 지정된 단축키를 처리합니다. | |
onTreeBlur(nextTree) | IFocusableTree.onTreeBlur를 참고하세요. | |
onTreeFocus(node, _previousTree) | IFocusableTree.onTreeFocus를 참고하세요. | |
position() | 가로 도구 상자인지, 작업 공간이 rtl에 있는지에 따라 도구 상자를 배치합니다. | |
refreshSelection() | 플라이아웃을 닫지 않고 콘텐츠를 업데이트합니다. 변수나 절차와 같은 동적 카테고리의 변경에 대한 응답으로 사용해야 합니다. | |
renderContents_(toolboxDef) | protected |
모든 도구 상자 항목을 도구 상자에 추가합니다. |
selectItem_(oldItem, newItem) | protected |
지정된 항목을 선택하고, 선택된 것으로 표시하고, aria 상태를 업데이트합니다. |
selectItemByPosition(position) | 도구 상자 항목 목록에서 위치를 기준으로 도구 상자 항목을 선택합니다. | |
setSelectedItem(newItem) | 지정된 항목을 선택된 항목으로 설정합니다. 항목을 선택할 수 없는 경우 작업이 실행되지 않습니다. | |
setVisible(isVisible) | 툴박스를 표시하거나 숨깁니다. | |
shouldDeselectItem_(oldItem, newItem) | protected |
이전 항목을 선택 해제해야 하는지 여부를 결정합니다. |
shouldSelectItem_(oldItem, newItem) | protected |
새 항목을 선택할지 여부를 결정합니다. |
updateCursorDeleteStyle_(addStyle) | protected |
내부 this.wouldDelete_ 속성을 사용하여 드롭 시 삭제될 것으로 예상되는 블록 또는 풍선이 있는지에 따라 도구 상자 위 커서의 CSS 스타일을 추가하거나 삭제합니다. |
updateFlyout_(oldItem, newItem) | protected |
선택한 항목에 따라 플라이아웃을 숨길지 표시할지 결정합니다. |
updateWouldDelete_(wouldDelete) | protected |
내부 wouldDelete_ 상태를 업데이트합니다. |
wouldDelete(element) | 제공된 블록이나 버블이 이 영역에 드롭되면 삭제되는지 여부를 반환합니다. 이 메서드는 요소가 삭제 가능한지 확인해야 하며 onDragEnter/onDragOver/onDragExit 전에 항상 호출됩니다. |