Workspace 클래스
작업공간의 클래스입니다. 블록이 포함된 데이터 구조입니다. UI가 없으며 헤드리스로 만들 수 있습니다.
Signature:
export declare class Workspace implements IASTNodeLocation
구현: IASTNodeLocation
생성자
생성자 | 수정자 | 설명 |
---|---|---|
(생성자)(opt_options) | Workspace 클래스의 새 인스턴스를 구성합니다. |
속성
속성 | 수정자 | 유형 | 설명 |
---|---|---|---|
connectionChecker | IConnectionChecker | ||
connectionDBList | ConnectionDB[] | 연결 위치의 빠른 조회를 위한 데이터베이스 집합입니다. | |
horizontalLayout | boolean | ||
id | string | ||
isFlyout | readonly |
boolean | 이 작업공간이 플라이아웃을 위한 표면인가요? |
isMutator | readonly |
boolean | 이 작업공간이 뮤테이터의 노출 영역인가요? |
MAX_UNDO | 숫자 | 스택의 최대 실행취소 이벤트 수입니다. 0 에서 실행취소를 사용 중지하고 Infinity 에서는 무제한으로 설정합니다. |
|
options | 옵션 | ||
redoStack_ | protected |
초록[] | |
렌더링됨 | boolean | 작업공간이 표시되면 true , 헤드리스이면 false 를 반환합니다. |
|
RTL | boolean | ||
SCAN_ANGLE | static |
숫자 | 블록을 보려면 수평에서 먼 각도로 기울입니다. 실행 순서는 일반적으로 위에서 아래로 나오지만, 작은 각도로 인해 스캔이 약간씩 왼쪽에서 오른쪽으로 편중됩니다 (RTL에서는 반전됨). 단위는 도입니다. 참조: https://tvtropes.org/pmwiki/pmwiki.php/Main/DiagonalBilling |
toolboxPosition | toolbox.Position | ||
undoStack_ | protected |
초록[] |
방법
메서드 | 수정자 | 설명 |
---|---|---|
addChangeListener(func) | 이 작업공간의 무언가가 변경되면 함수를 호출합니다. 이미 스택에 최근 이벤트가 몇 개 있을 수 있습니다. 따라서 변경 리스너가 추가되기 몇 밀리초 전에 발생한 이벤트와 함께 새 변경 리스너가 호출될 수 있습니다. | |
addTopBlock(block) | 상위 블록 목록에 블록을 추가합니다. | |
addTypedBlock(block) | 유형별로 키가 지정된 블록 목록에 블록을 추가합니다. | |
allInputsFilled(opt_shadowBlocksAreFilled) | 작업공간의 모든 값과 문 입력이 블록으로 채워졌는지 확인합니다. | |
clear() | 작업공간의 모든 차단 및 댓글을 삭제합니다. | |
clearUndo() | 실행취소/다시 실행 스택을 지웁니다. | |
createVariable(name, opt_type, opt_id) | 특정 이름, 유형(선택사항), ID(선택사항)를 사용하여 변수를 만듭니다. | |
deleteVariableById(id) | 이 작업공간에서 전달된 ID 및 모든 용도를 기준으로 변수를 삭제합니다. 사용자에게 확인을 요청하는 메시지를 표시할 수 있습니다. | |
dispose() | 이 작업공간을 폐기합니다. 메모리 누수를 방지하기 위해 모든 DOM 요소에서 연결을 해제합니다. | |
fireChangeListener(event) | 변경 이벤트를 실행합니다. | |
getAll() | static |
모든 작업공간을 찾습니다. |
getAllBlocks(ordered) | 작업공간에서 모든 블록을 찾습니다. 블록은 위치를 기준으로 (약간의 LTR 또는 RTL 편중) 위에서 아래로 정렬됩니다. | |
getAllVariableNames() | 모든 유형의 모든 변수 이름을 반환합니다. | |
getAllVariables() | 모든 유형의 변수를 모두 반환합니다. | |
getBlockById(id) | 이 작업공간에서 지정된 ID가 있는 블록을 찾습니다. | |
getBlocksByType(type, ordered) | 연결된 유형이 있는 블록을 찾아 반환합니다. 블록은 위치를 기준으로 (약간의 LTR 또는 RTL 편중) 위에서 아래로 정렬됩니다. | |
getById(id) | static |
지정된 ID의 작업공간을 찾습니다. |
getProcedureMap()을 호출하면 됩니다. | 작업 영역에서 모든 절차의 맵을 반환합니다. | |
getRootWorkspace() | 작업공간에 상위 항목이 있는 경우 이 작업공간의 루트 작업공간을 반환합니다. 예를 들어 플롯의 작업공간이나 미니 작업공간 도움말 풍선에는 상위 작업공간이 있습니다. |
|
getTopBlocks(ordered) | 최상위 블록을 찾아서 반환합니다. 블록은 위치를 기준으로 (약간의 LTR 또는 RTL 편중) 위에서 아래로 정렬됩니다. | |
getVariable(name, opt_type) | 지정된 이름으로 변수를 찾아 반환합니다. 찾을 수 없으면 null을 반환합니다. | |
getVariableById(id) | 지정된 ID로 변수를 찾아 반환합니다. 찾을 수 없으면 null을 반환합니다. | |
getVariableMap() | 작업공간의 모든 변수의 맵을 반환합니다. | |
getVariablesOfType(type) | 지정된 유형의 변수를 찾습니다. 유형이 null이면 빈 문자열 유형의 변수 목록을 반환합니다. | |
getVariableUsesById(id) | ID로 식별되는 특정 변수의 모든 용도를 찾습니다. | |
getWidth() | 작업공간의 가로 오프셋을 반환합니다. XML의 LTR/RTL 호환성을 위해 만들어졌습니다. 헤드리스 작업공간과는 관련이 없습니다. | |
hasBlockLimits() | 작업공간의 최대 블록 수 또는 특정 유형의 최대 블록 수에 제한이 있는지 확인합니다. | |
isCapacityAvailable(typeCountsMap) | 특정 개수의 블록에 만들 용량이 남아 있는지 확인합니다. 지도에 표시되는 총 블록 수가 총 남은 용량보다 크면 false가 반환됩니다. 유형 수가 해당 유형의 남은 용량보다 크면 false가 반환됩니다. | |
newBlock(prototypeName, opt_id) | 새로 만든 블록을 가져옵니다. | |
remainingCapacity() | maxBlocks에 도달하기 전에 작업공간에 추가할 수 있는 블록 수입니다. | |
remainingCapacityOfType(type) | 해당 유형에 허용되는 maxInstances에 도달하기 전에 작업공간에 추가할 수 있는 특정 유형의 블록 수입니다. | |
removeChangeListener(func) | 이 작업공간의 변경사항 리슨을 중지합니다. | |
removeTopBlock(block) | 상위 블록 목록에서 블록을 삭제합니다. | |
removeTypedBlock(block) | 유형별로 키가 지정된 블록 목록에서 블록을 삭제합니다. | |
renameVariableById(id, newName)를 | 변수 맵에서 변수 이름을 업데이트하여 변수 이름을 바꿉니다. 주어진 ID로 이름을 바꿀 변수를 식별합니다. | |
undo(redo) | 이전 작업을 실행취소 또는 다시 실행합니다. |