플라이아웃 클래스
플라이아웃을 위한 클래스입니다.
Signature:
export declare abstract class Flyout extends DeleteArea implements IAutoHideable, IFlyout
확장: DeleteArea
구현: IAutoHideable, IFlyout
생성자
생성자 | 수정자 | 설명 |
---|---|---|
(생성자)(workspaceOptions) | Flyout 클래스의 새 인스턴스를 구성합니다. |
속성
속성 | 수정자 | 유형 | 설명 |
---|---|---|---|
autoClose | boolean | 블록이 생성되면 플라이아웃이 자동으로 닫히나요? | |
buttons_ | protected |
FlyoutButton[] | 표시되는 버튼 목록입니다. |
콘텐츠 | protected |
플라이아웃 항목[] | 표시되는 버튼 및 블록 목록입니다. |
CORNER_RADIUS | readonly |
숫자 | 플라이아웃 배경의 모서리 반경입니다. |
dragAngleRange_ | protected |
숫자 | '작업공간으로 드래그'로 간주되는 플라이아웃의 드래그 각도 범위입니다. 직교 선에서 플라이아웃 가장자리까지 이 정도 거리의 경계 내에 있는 드래그는 '작업공간으로 드래그'로 간주됩니다. |
FlyoutItemType | static |
FlyoutItemType 유형 | 플라이아웃 콘텐츠 항목의 유형입니다. |
GAP_X | readonly |
숫자 | |
GAP_Y | readonly |
숫자 | |
height_ | protected |
숫자 | 플라이아웃 높이입니다. |
마진 | readonly |
숫자 | |
rectMap_ | protected |
WeakMap<BlockSvg, SVGElement> | |
RTL | boolean | ||
SCROLLBAR_MARGIN | readonly |
숫자 | 스크롤바와 플라이아웃 배경의 가장자리 사이의 상단/하단 패딩입니다. |
svgBackground_ | protected |
SVGPathElement | null | 플라이아웃의 배경 주위 경로로, 배경색으로 채워집니다. |
svgGroup_ | protected |
SVGGElement | null | 버튼 또는 라벨의 루트 SVG 그룹입니다. |
tabWidth_ |
|
숫자 | |
toolboxPosition_ | protected |
숫자 | |
width_ | protected |
숫자 | 플라이아웃의 너비입니다. |
workspace_ | protected |
WorkspaceSvg |
메서드
메서드 | 수정자 | 설명 |
---|---|---|
addBlockListeners_(루트, 블록, rect) | protected |
플라이아웃에 추가된 블록에 리스너를 추가합니다. |
autoHide(onlyClosePopups) | 자동 종료 플라이아웃인 경우 플라이아웃을 자동으로 숨깁니다. | |
blockIsRecyclable_(_block) | protected |
지정된 블록을 재활용할 수 있는지 여부를 반환합니다. |
createDom(tagName) | 플라이아웃의 DOM을 만듭니다. 한 번만 호출하면 됩니다. 플라이아웃은 자체 SVG 요소로 존재하거나 별도의 SVG 요소 내에 중첩된 g 요소일 수 있습니다. | |
createRect_(block, x, y, blockHW, index) | protected |
지정된 블록에 해당하는 직사각형을 만들어 배치합니다. |
dispose() | 이 플라이아웃은 폐기합니다. 모든 DOM 요소에서 연결을 해제하여 메모리 누수를 방지합니다. | |
getContents() | 현재 플라이아웃의 버튼과 블록 목록을 가져옵니다. | |
getFlyoutScale() | 플라이아웃의 배율 (확대/축소 수준)을 가져옵니다. 기본적으로 대상 작업공간 배율과 일치하지만 재정의될 수 있습니다. | |
getHeight() | 플라이아웃의 높이를 구합니다. | |
getWidth() | 플라이아웃의 너비를 가져옵니다. | |
getWorkspace() | 플라이아웃 내에 작업공간을 가져옵니다. | |
getX()를 사용합니다. | abstract |
플라이아웃 위치의 x 좌표를 계산합니다. |
getY()를 사용하여 | abstract |
플라이아웃 위치의 y 좌표를 계산합니다. |
hide()를 사용합니다. | 플라이아웃을 숨기고 비웁니다. | |
init(targetWorkspace) | 플라이아웃을 초기화합니다. | |
initFlyoutButton_(버튼, x, y) | protected |
주어진 버튼을 초기화합니다(예: 올바른 위치로 이동하거나 리스너를 추가하는 등). |
isDragTowardWorkspace(currentDragDeltaXY) | abstract |
플라이아웃의 위치와 방향에 따라 드래그 델타가 작업공간을 향하고 있는지 확인합니다. 판별드래그Intention_에서 새 블록을 생성해야 하는지 또는 플라이아웃을 스크롤해야 하는지 결정하는 데 사용됩니다. |
isVisible() | 플라이아웃이 보이나요? | |
레이아웃_(콘텐츠, 간격) |
|
플라이아웃에 블록을 배치합니다. |
moveRectToBlock_(rect, block) | protected |
탭, 모자 및 기타 돌출부를 고려하여 직사각형을 블록 뒤에 정확히 배치합니다. |
position()을 사용하세요. | abstract |
플라이아웃을 배치합니다. |
positionAt_(너비, 높이, x, y) | protected |
position()에서 계산된 좌표를 기준으로 뷰를 업데이트합니다. |
리플로우() | 블록 및 블록의 매트를 리플로우합니다. | |
reflowInternal_() |
|
플라이아웃의 높이를 계산합니다. 각 블록 아래에 매트를 놓으세요. RTL의 경우 블록을 오른쪽 정렬된 상태로 배치합니다. |
scrollToStart() | abstract |
플라이아웃을 콘텐츠의 시작 부분으로 스크롤합니다. |
serializeBlock(block) | protected |
블록을 JSON으로 직렬화합니다. |
setAutoClose(autoClose) | 블록을 드래그 아웃하거나 작업공간을 클릭하는 등의 경우에 이 플라이아웃을 자동으로 닫을지 여부를 설정합니다. | |
setContainerVisible(visible) | 이 플라이아웃의 컨테이너를 표시할지 여부를 설정합니다. | |
setContents(contents) | 플라이아웃에 버튼 및 블록 목록을 저장합니다. | |
setMetrics_(xyRatio) |
|
스크롤바와 일치하도록 플라이아웃의 변환을 설정합니다. |
setVisible(visible) | 플라이아웃 표시 여부를 설정합니다. 값이 true라고 해서 반드시 플라이아웃이 표시된 것은 아닙니다. 컨테이너가 숨겨져 있어 숨겨질 수 있습니다. | |
show(flyoutDef) | 플라이아웃을 표시하고 채웁니다. | |
wheel_(e) |
|
플라이아웃을 스크롤합니다. |