플라이아웃 클래스
플라이아웃 클래스.
서명:
export declare abstract class Flyout extends DeleteArea implements IAutoHideable, IFlyout
확장: DeleteArea
구현: IAutoHideable, IFlyout
생성자
생성자 | 수정자 | 설명 |
---|---|---|
(constructor)(workspaceOptions) | Flyout 클래스의 새 인스턴스를 생성합니다. |
속성
속성 | 수정자 | 유형 | 설명 |
---|---|---|---|
autoClose | 부울 | 블록을 만들면 플라이아웃이 자동으로 닫히나요? | |
buttons_ | protected |
FlyoutButton[] | 표시되는 버튼 목록입니다. |
콘텐츠 | protected |
FlyoutItem[] | 표시되는 버튼 및 블록의 목록입니다. |
CORNER_RADIUS | readonly |
숫자 | 플라이아웃 배경의 모서리 반경입니다. |
dragAngleRange_ | protected |
숫자 | 플라이아웃으로부터의 드래그 각도 범위이며, '작업공간으로 드래그'하는 것으로 간주됩니다. 직각선에서 플라이아웃 가장자리까지 몇 도의 경계 내에 있는 드래그는 '작업공간을 향해 드래그'하는 것으로 간주됩니다. |
FlyoutItemType | static |
빠른 이동 항목 유형 유형 | 플라이아웃 콘텐츠 항목의 유형입니다. |
GAP_X | readonly |
숫자 | |
GAP_Y | readonly |
숫자 | |
height_ | protected |
숫자 | 플라이아웃 높이. |
수익 | readonly |
숫자 | |
rectMap_ | protected |
WeakMap<BlockSvg, SVGElement> | |
RTL | 부울 | ||
SCROLLBAR_MARGIN | readonly |
숫자 | 스크롤바와 플라이아웃 배경 가장자리 사이의 상단/하단 패딩입니다. |
svgBackground_ | protected |
SVGPathElement | 없음 | 플라이아웃 배경 주변의 경로로, 배경 색상으로 채워집니다. |
svgGroup_ | protected |
SVGG요소 | 없음 | 버튼 또는 라벨의 루트 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 |
플라이아웃의 위치와 방향을 기준으로 드래그 델타가 작업공간을 향하는지 확인합니다. 이 필드는 새 블록을 만들어야 하는지 또는 플라이아웃이 스크롤되어야 하는지를 결정하는 데 findDragIntention_에 사용됩니다. |
isVisible() | 플라이아웃이 보이나요? | |
layout_(콘텐츠, 간격) |
|
플라이아웃에 블록을 배치합니다. |
moveRectToBlock_(rect, block) | protected |
우리가 발명한 탭, 모자 및 기타 돌출부를 고려하여 직사각형을 정확하게 블록 뒤에 놓으세요. |
position() | abstract |
플라이아웃을 배치합니다. |
positionAt_(너비, 높이, x, y) | protected |
position()에서 계산된 좌표를 기준으로 뷰를 업데이트합니다. |
reflow() | 블록 및 매트 리플로우 | |
reflowInternal_() |
|
플라이아웃의 높이 계산 각 블록 아래에 매트를 배치합니다. RTL의 경우: 블록을 오른쪽 정렬하여 배치합니다. |
scrollToStart() | abstract |
플라이아웃을 콘텐츠의 시작 부분으로 스크롤합니다. |
serializeBlock(block) | protected |
블록을 JSON으로 직렬화합니다. |
setAutoClose(autoClose) | 블록을 드래그아웃하거나 작업공간을 클릭하는 등의 경우에 이 플라이아웃을 자동으로 닫을지 설정합니다. | |
setContainerVisible(visible) | 이 플라이아웃의 컨테이너를 표시할지 여부를 설정합니다. | |
setContents(contents) | 플라이아웃에 버튼 및 블록 목록을 저장합니다. | |
setMetrics_(xyRatio) |
|
스크롤바와 일치하도록 플라이아웃의 변환을 설정합니다. |
setVisible(visible) | 플라이아웃 표시 여부를 설정합니다. true 값이 반드시 플라이아웃이 표시되었음을 의미하지는 않습니다. 컨테이너가 숨겨져 있을 수 있습니다. | |
show(flyoutDef) | 플라이아웃을 표시하고 채웁니다. | |
wheel_(e) |
|
플라이아웃을 스크롤합니다. |