블록 클래스
한 블록의 클래스입니다. 일반적으로 직접 호출되지 않으며 workspace.newBlock()을 사용하는 것이 좋습니다.
서명:
export declare class Block
생성자
생성자 | 수정자 | 설명 |
---|---|---|
(constructor)(workspace, prototypeName, opt_id) | Block 클래스의 새 인스턴스를 생성합니다. |
속성
속성 | 수정자 | 유형 | 설명 |
---|---|---|---|
childBlocks_ | protected |
this[] | |
collapsed_ | protected |
부울 | |
COLLAPSED_FIELD_NAME |
|
문자열 | 접힌 필드에 지정된 언어 중립 ID입니다. |
COLLAPSED_INPUT_NAME |
|
문자열 | 접힌 입력에 지정된 언어 중립 ID입니다. |
colour_ | protected |
문자열 | 블록의 색상입니다('#RRGGBB' 형식). |
compose? | (rootBlock: Block) => void | (선택사항) 변형 대화상자의 콘텐츠를 기반으로 블록을 재구성하는 선택적 메서드입니다. | |
contextMenu | 부울 | ||
data | string | null | 블록과 XML 간에 왕복하는 선택적 텍스트 데이터입니다. 효과가 없습니다. 서드 파티에서 메타 정보에 사용할 수 있습니다. | |
분해? | (workspace: Workspace) => 차단 | (선택사항) 이 블록의 구성을 나타내는 블록으로 뮤테이터 플라이아웃을 채우는 선택적 함수입니다. | |
파괴? | () => void | (선택사항) 삭제 중에 호출되는 선택적 메서드입니다. | |
disposing | protected |
부울 | 현재 블록이 삭제되고 있나요? |
domToMutation? | (p1: Element) => void | (선택사항) XML에서 변형 상태를 역직렬화하는 방법을 정의하는 선택적 역직렬화 메서드입니다. mutationToDom 정의와 함께 사용해야 합니다. |
|
getDeveloperVariables? | () => string[] | (선택사항) 생성자가 사용할 개발자 변수를 선언하는 선택적 메서드입니다. 개발자 변수는 사용자에게 표시되지 않으며 생성된 코드에서 전역 변수로 선언됩니다. | |
모자? | 문자열 | (선택사항) 모자 유형의 이름입니다. | |
helpUrl | string | (() => string) | null | 블록 도움말의 문자열 또는 URL을 반환하는 함수입니다. 도움이 없는 경우 null입니다. | |
아이콘 | IIcon[] | ||
id | 문자열 | ||
init? | () => void | (선택사항) 초기화 중에 호출되는 선택적 메서드입니다. | |
inputList | 입력[] | ||
inputsInline? | 부울 | (선택사항) | |
inputsInlineDefault? | 부울 | (선택사항) | |
isInFlyout | 부울 | ||
isInMutator | 부울 | ||
isInsertionMarker_ | protected |
부울 | 이 블록이 삽입 마커인 경우 true입니다. |
loadExtraState? | (p1: any) => void | (선택사항) JSON과 호환되는 항목에서 블록의 추가 상태 (예: 변형 상태)를 역직렬화하는 방법을 정의하는 선택적 직렬화 메서드입니다. saveExtraState 정의와 함께 사용해야 합니다. |
|
mutationToDom? | (...p1: any[]) => Element | (선택사항) 변형 상태를 XML로 직렬화하는 방법을 정의하는 선택적 직렬화 메서드입니다. domToMutation 정의와 함께 사용해야 합니다. |
|
nextConnection | 연결 | null | ||
onchange? | ((p1: Abstract) => void) | null | (선택사항) 블록의 상위 워크스페이스가 변경될 때마다 사용할 수 있는 선택적 콜백 메서드입니다. 일반적으로 생성자, 블록 유형 이니셜라이저 함수 또는 확장 프로그램 이니셜라이저 함수에서만 호출됩니다. | |
outputConnection | 연결 | null | ||
outputShape_ | protected |
number | null | |
parentBlock_ | protected |
this | null | |
previousConnection | 연결 | null | ||
렌더링됨 | readonly |
부울 | 이 블록은 BlockSVG인가요? |
RTL | 부울 | ||
saveExtraState? | (doFullSerialization?: boolean) => any | (선택사항) 블록의 추가 상태 (예: 변형 상태)를 JSON과 호환되는 것으로 직렬화하는 방법을 정의하는 선택적 직렬화 메서드입니다. loadExtraState 정의와 함께 사용해야 합니다. |
|
styleName_ | protected |
문자열 | 블록 스타일의 이름입니다. |
suppressPrefixSuffix | boolean | null | 생성된 코드에 STATEMENT_PREFIX 및 STATEMENT_SUFFIX 추가를 억제하는 선택적 속성입니다. | |
도움말 | Tooltip.TipInfo | ||
type | 문자열 | ||
workspace | Workspace |
메서드
메서드 | 수정자 | 설명 |
---|---|---|
addIcon(icon) | 블록에 지정된 아이콘을 추가합니다. | |
allInputsFilled(opt_shadowBlocksAreFilled) | 모든 문이 있고 값 입력이 블록으로 채워져 있는지 재귀적으로 확인합니다. 이 스택에서 다음에 오는 모든 문 블록도 확인합니다. | |
appendDummyInput(name) | 더미 입력 행을 추가합니다. | |
appendEndRowInput(name) | 행을 종료하는 입력을 추가합니다. | |
appendInput(input) | 지정된 입력 행을 추가합니다. 맞춤 입력을 블록에 추가할 수 있습니다. |
|
appendStatementInput(name) | 문이 입력된 행을 추가합니다. | |
appendValueInput(name) | 값 입력 행을 추가합니다. | |
bumpNeighbours() | 연결되지 않은 블록을 정렬되지 않도록 움직입니다. 실제로 연결되지 않은 두 블록이 우연히 화면에 정렬되어서는 안 됩니다. | |
dispose(healStack) | 이 블록을 삭제합니다. | |
disposeInternal() | protected |
상위 블록에 필요한 작업을 실행하지 않고 이 블록을 삭제합니다. 예를 들어 이벤트를 실행하지 않거나 블록을 분리하지 않습니다. |
doInit_() | protected |
init() 함수를 호출하고 관련 이벤트 실행 등을 처리합니다. |
getChildren(ordered) | 이 블록 내에 직접 중첩된 모든 블록을 찾습니다. 값 및 문 입력과 후속 문을 포함합니다. 출력 탭의 연결이나 이전 문을 제외합니다. 블록은 원하는 경우 위에서 아래로 위치별로 정렬할 수 있습니다. | |
getColour() | 블록의 색상을 가져옵니다. | |
getCommentText() | 이 블록의 주석을 반환합니다 (주석이 없는 경우 null). | |
getDescendants(ordered) | 이 블록 내에 직접 또는 간접적으로 중첩된 모든 블록을 찾습니다. 목록에 이 블록을 포함합니다. 값 및 문 입력과 후속 문을 포함합니다. 출력 탭의 연결이나 이전 문을 제외합니다. 블록은 원하는 경우 위에서 아래로 위치별로 정렬할 수 있습니다. | |
getDisabledReasons() | 현재 차단이 사용 중지된 이유(있는 경우)를 가져옵니다. 차단이 사용 설정된 경우 이 세트는 비어 있습니다. | |
getField(name) | 블록에서 이름이 지정된 필드를 반환합니다. | |
getFields() | 블록의 모든 필드를 제공하는 생성자를 반환합니다. 블록의 필드를 반복하는 데 사용할 수 있는 생성자입니다. |
|
getFieldValue(name) | 지정된 필드의 언어 중립적 값을 반환합니다. | |
getHue() | 블록의 HSV 색조 값을 가져옵니다. 색조가 설정되지 않은 경우 null입니다. | |
getIcon(type) | ||
getIcons() | ||
getInheritedDisabled() | 부모로 인해 차단이 사용 중지되었는지 여부를 가져옵니다. 블록의 자체 disabled 속성은 고려되지 않습니다. | |
getInput(name) | 이름이 지정된 입력 객체를 가져옵니다. | |
getInputsInline() | 값 입력이 가로로 정렬되는지 세로로 정렬되는지 가져옵니다. | |
getInputTargetBlock(name) | 이름이 지정된 입력에 연결된 블록을 가져옵니다. | |
getInputWithBlock(block) | 지정된 블록에 연결되는 입력을 반환합니다. | |
getNextBlock() | 이 블록에 직접 연결된 다음 문 블록을 반환합니다. | |
getOutputShape() | 블록의 출력 모양을 가져옵니다. | |
getParent() | 상위 블록을 반환하거나 이 블록이 최상위 수준에 있는 경우 null을 반환합니다. 상위 블록은 이전 연결에 연결된 블록 (문 블록의 경우) 또는 출력 연결에 연결된 블록 (값 블록의 경우)입니다. | |
getPreviousBlock() | 이전 연결에 연결된 블록을 반환합니다. | |
getRelativeToSurfaceXY() | 그리기 도구의 원점 (0,0)을 기준으로 이 블록의 왼쪽 상단 모서리 좌표를 작업공간 단위로 반환합니다. | |
getRootBlock() | 이 블록의 트리에서 최상위 블록을 반환합니다. 이 블록이 최상위 수준에 있으면 자체를 반환합니다. | |
getStyleName() | 블록 스타일의 이름을 가져옵니다. | |
getSurroundParent() | 현재 블록을 둘러싸는 상위 블록을 반환하거나 이 블록에 둘러싸는 블록이 없는 경우 null을 반환합니다. 상위 블록은 이전 문이 될 수 있지만 주변 블록은 if 문, while 루프 등일 수 있습니다. | |
getTooltip() | 이 블록의 도움말 텍스트를 반환합니다. | |
getVars() | 이 블록에서 참조하는 모든 변수를 반환합니다. | |
hasDisabledReason(reason) | 제공된 이유로 현재 차단이 사용 중지되어 있는지 여부를 가져옵니다. | |
hasIcon(type) | ||
initModel() | 블록의 모든 필드에서 initModel을 호출합니다. 두 번 이상 호출할 수 있습니다. 블록을 만든 후 블록과 처음 상호작용하기 전에 initModel 또는 initSvg를 호출해야 합니다. 상호작용에는 UI 작업 (예: 클릭 및 드래그)과 이벤트 실행 (예: 만들기, 삭제, 변경)이 포함됩니다. | |
isCollapsed() | 블록이 접히거나 펼쳐져 있는지 여부를 가져옵니다. | |
isDeletable() | 이 블록을 삭제할 수 있는지 여부를 가져옵니다. | |
isDisposed() | 이 블록이 삭제되었는지 여부를 반환합니다. | |
isDuplicatable() | 블록을 복제할 수 있는지 여부를 가져옵니다. 이 블록과 하위 요소를 복제하면 이 블록이 워크스페이스의 용량을 초과하는 경우 이 블록은 복제할 수 없습니다. 이 블록과 하위 요소를 복제하면 maxInstances를 초과하는 유형이 생기면 이 블록은 복제할 수 없습니다. | |
isEnabled() | 이 블록의 사용 설정 여부를 가져옵니다. 차단을 사용 중지할 이유가 없는 경우 차단이 사용 설정된 것으로 간주됩니다. 차단이 잘못된 위치에 있는 경우와 같이 사용자가 수동으로 사용 설정하려고 시도하더라도 다른 이유로 차단이 사용 중지될 수 있습니다. | |
isInsertionMarker() | 이 블록이 삽입 마커 블록인지 여부를 가져옵니다. | |
isOwnDeletable() | 이 블록의 자체 삭제 가능 속성이 true인지 false인지 반환합니다. | |
isOwnEditable() | 이 블록의 자체 수정 가능 속성이 true인지 false인지 반환합니다. | |
isShadow() | 이 블록이 그림자 블록인지 여부를 가져옵니다. | |
jsonInit(json) | 크로스 플랫폼, 다국어 지원 JSON 설명을 사용하여 이 블록을 초기화합니다. | |
mixin(mixinObj, opt_disableCheck) | mixinObj의 키/값을 이 블록 객체에 추가합니다. 기본적으로 이 메서드는 mixinObj의 키가 프로토타입 값을 포함하여 블록의 기존 값을 덮어쓰지 않는지 확인합니다. 이를 통해 향후 블록 기능과의 믹스인 / 확장 프로그램 비호환성을 방지할 수 있습니다. 이 검사는 true를 두 번째 인수로 전달하여 사용 중지할 수 있습니다. | |
moveBy(dx, dy, reason) | 상대 오프셋으로 블록을 이동합니다. | |
moveInputBefore(name, refName) | 이름이 지정된 입력을 이 블록의 다른 위치로 이동합니다. | |
moveNumberedInputBefore(inputIndex, refIndex) | 번호가 매겨진 입력란을 이 블록의 다른 위치로 이동합니다. | |
removeIcon(type) | getBlock에서 getType이 지정된 유형 iconType과 일치하는 아이콘을 삭제합니다. | |
removeInput(name, opt_quiet) | 이 블록에서 입력을 삭제합니다. | |
renameVarById(oldId, newId) | 변수 이름이 변경되고 있음을 알리는 알림입니다. ID가 이 블록의 변수 중 하나와 일치하는 경우 이름을 변경합니다. | |
setCollapsed(collapsed) | 블록이 접히는지 여부를 설정합니다. | |
setColour(colour) | 블록의 색상을 변경합니다. | |
setCommentText(text) | 이 블록의 주석 텍스트를 설정합니다. | |
setDeletable(deletable) | 이 블록을 삭제할 수 있는지 여부를 설정합니다. | |
setDisabledReason(disabled, reason) | 차단을 사용 중지할 수 있는 이유를 추가하거나 삭제합니다. 블록을 사용 중지해야 할 이유가 있으면 블록 자체가 사용 중지된 것으로 간주됩니다. 사용자가 수동으로 차단을 사용 중지했거나 차단이 잘못된 경우와 같이 여러 가지 독립적인 이유로 동시에 차단이 사용 중지될 수 있습니다. | |
setEditable(editable) | 이 블록을 수정할 수 있는지 여부를 설정합니다. | |
setFieldValue(newValue, name) | 이 블록의 지정된 필드 값을 설정합니다. | |
setHelpUrl(url) | 이 블록의 도움말 페이지 URL을 설정합니다. | |
setInputsInline(newBoolean) | 값 입력이 가로로 정렬될지 세로로 정렬될지 설정합니다. | |
setMovable(movable) | 이 블록을 이동할 수 있는지 여부를 설정합니다. | |
setMutator(_mutator) | 이 블록에 변환 대화상자를 지정합니다. | |
setNextStatement(newBoolean, opt_check) | 다른 블록이 이 블록 하단에 체이닝될 수 있는지 여부를 설정합니다. | |
setOnChange(onchangeFn) | 블록의 상위 워크스페이스가 변경될 때마다 사용할 콜백 함수를 설정하여 이전 onchange 핸들러를 대체합니다. 이는 일반적으로 생성자, 블록 유형 이니셜라이저 함수 또는 확장 프로그램 이니셜라이저 함수에서만 호출됩니다. | |
setOutput(newBoolean, opt_check) | 이 블록이 값을 반환하는지 설정합니다. | |
setOutputShape(outputShape) | 블록의 출력 도형을 설정합니다. | |
setPreviousStatement(newBoolean, opt_check) | 이 블록을 다른 블록 하단에 연결할 수 있는지 여부를 설정합니다. | |
setStyle(blockStyleName) | 블록의 스타일 및 색상 값을 설정합니다. | |
setTooltip(newTip) | 이 블록의 도움말을 설정합니다. | |
setWarningText(_text, _opt_id) | 이 블록의 경고 텍스트를 설정합니다. | |
toDevString() | 이 메서드는 개발자 용어로 이 블록을 설명하는 문자열 (유형 이름 및 ID, 영어로만 제공)을 반환합니다. 콘솔 로그 및 오류에만 사용하도록 설계되었습니다. 사용자의 모국어 (블록 텍스트, 필드 값, 하위 블록 포함)를 사용하는 문자열이 필요한 경우 toString()을 사용하세요. |
|
toString(opt_maxLength, opt_emptyToken) | 이 블록과 모든 하위 요소의 인간이 읽을 수 있는 텍스트 표현을 만듭니다. | |
unplug(opt_healStack) | 상위 블록에서 이 블록의 전원 코드를 분리합니다. 이 블록이 문이면 원하는 경우 아래 블록을 맨 위 블록에 다시 연결합니다. |