플라이아웃 클래스
플라이아웃을 위한 클래스입니다.
Signature:
export declare abstract class Flyout extends DeleteArea implements IAutoHideable, IFlyout
확장: DeleteArea
구현: IAutoHideable, IFlyout
생성자
생성자 | 수정자 | 설명 |
---|---|---|
(생성자)(workspaceOptions) | Flyout 클래스의 새 인스턴스를 구성합니다. |
속성
속성 | 수정자 | 유형 | 설명 |
---|---|---|---|
autoClose | boolean | 블록이 생성되면 플라이아웃이 자동으로 닫히나요? | |
buttons_ | protected |
FlyoutButton[] | 표시된 버튼 목록 |
CORNER_RADIUS | readonly |
숫자 | 플라이아웃 배경의 모서리 반경입니다. |
dragAngleRange_ | protected |
숫자 | '작업공간으로 드래그'로 간주되는 플라이아웃에서 드래그 각도의 범위입니다. 직각 선에서 플라이아웃 가장자리까지 이 정도 거리의 경계 내에 있는 드래그는 '작업공간으로 드래그'로 간주됩니다. |
FlyoutItemType | static |
비행 아이템 유형 유형 | 플라이아웃 콘텐츠 항목의 유형입니다. |
GAP_X | readonly |
숫자 | |
GAP_Y | readonly |
숫자 | |
height_ | protected |
숫자 | 플라이아웃 높이입니다. |
마진 | readonly |
숫자 | |
rectMap_ | protected |
약한 맵<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 요소에서 연결을 해제합니다. | |
getFlyoutScale() | 플라이아웃의 배율 (확대/축소 수준)을 가져옵니다. 기본적으로 이 값은 대상 작업공간 배율과 일치하지만 재정의할 수 있습니다. | |
getHeight() | 플라이아웃의 높이를 가져옵니다. | |
getWidth() | 플라이아웃의 너비를 가져옵니다. | |
getWorkspace() | 플라이아웃 내부에 작업공간을 가져옵니다. | |
getX()를 사용합니다. | abstract |
플라이아웃 위치의 x 좌표를 계산합니다. |
getY()를 호출하기만 하면 됩니다. | abstract |
플라이아웃 위치의 y 좌표를 계산합니다. |
숨김 | 플라이아웃을 숨기고 비웁니다. | |
init(targetWorkspace) | 플라이아웃을 초기화합니다. | |
initFlyoutButton_(버튼, x, y) | protected |
주어진 버튼을 초기화합니다. 버튼을 올바른 위치로 옮기고 리스너를 추가하는 등의 작업을 합니다. |
isDragTowardWorkspace(currentDragDeltaXY) | abstract |
플라이아웃의 위치와 방향에 따라 드래그 델타가 작업공간을 향하고 있는지 확인합니다. 이 변수는 새 블록을 생성해야 하는지 또는 플라이아웃을 스크롤해야 하는지 여부를 결정하기 위해 resolveDragIntention_에서 사용됩니다. |
isVisible() | 플라이아웃이 보이나요? | |
레이아웃_(콘텐츠, 간격) |
|
플라이아웃에 블록을 배치합니다. |
moveRectToBlock_(rect, block) | protected |
탭, 모자 및 기타 돌출부를 고려하여 직사각형을 이동하여 블록 뒤에 정확히 배치합니다. |
위치() | abstract |
플라이아웃을 배치합니다. |
positionAt_(너비, 높이, x, y) | protected |
position()에서 계산된 좌표를 기준으로 뷰를 업데이트합니다. |
reflow()를 참고하세요. | 블록 및 매트를 리플로우합니다. | |
reflowInternal_() |
|
플라이아웃의 높이를 계산합니다. 각 블록 아래에 매트를 놓습니다. RTL의 경우: 블록을 오른쪽 정렬로 배치합니다. |
scrollToStart() | abstract |
플라이아웃을 콘텐츠의 시작 부분으로 스크롤합니다. |
setAutoClose(autoClose) | 블록을 드래그하거나, 작업공간을 클릭하는 등의 경우에 이 플라이아웃을 자동으로 닫을지 여부를 설정합니다. | |
setContainerVisible(visible) | 이 플라이아웃의 컨테이너 표시 여부를 설정합니다. | |
setMetrics_(xyRatio) |
|
스크롤바와 일치하도록 플라이아웃의 변환을 설정합니다. |
setVisible(visible) | 플라이아웃 표시 여부를 설정합니다. 값이 true라고 해서 반드시 플라이아웃이 표시된 것은 아닙니다. 컨테이너가 숨겨져 있어 숨겨져 있을 수 있습니다. | |
show(flyoutDef) | 플라이아웃을 표시하고 채웁니다. | |
wheel_(e) |
|
플라이아웃을 스크롤합니다. |