blockly > BlockDragger

BlockDragger 類別

區塊拖曳工具的類別。用滑鼠或觸控拖曳滑鼠遊標時,這個區塊會在工作區周圍移動區塊。

Signature:

export declare class BlockDragger implements IBlockDragger 

實作: IBlockDragger

建構函式

建構函式 修飾符 說明
(建構函式)(模塊, 工作區) 建構 BlockDragger 類別的新例項

屬性

屬性 修飾符 類型 說明
connectionPreviewer protected IConnectionPreviewer
draggingBlock_ protected BlockSvg 要拖曳的堆疊中的頂端區塊。
dragIconData_ protected IconPositionData[]
startXY_ protected 座標
workspace_ protected WorkspaceSvg 拖曳區塊的工作區。
wouldDeleteBlock_ protected boolean 如果立即捨棄該區塊,系統是否會刪除該區塊。

方法

方法 修飾符 說明
disconnectBlock_(healStack, currentDragDeltaXY) protected 中斷連線並移至新位置。
drag(e, delta) 根據指定的事件,執行區塊拖曳步驟。並據此更新螢幕。
dragIcons_() protected 移動與這個拖曳項目連結的所有圖示。
endDrag(e, currentDragDeltaXY) 完成區塊拖曳之後,將方塊加回工作區。
fireDragEndEvent_() protected 在區塊拖曳結束時觸發 UI 事件。
fireDragStartEvent_() protected 在區塊拖曳開始時觸發 UI 事件。
fireMoveEvent_() protected 在區塊拖曳結束時觸發移動事件。
getInsertionMarkers() 取得現有的插入標記清單。拖曳項目會有 0、1 或 2 個插入標記。
getNewLocationAfterDrag_(currentDragDeltaXY) protected 計算拖曳區塊後,計算拖曳差異和新的位置值。
maybeDeleteBlock_() protected 如果允許,可能會刪除拖曳區塊。如果 this.wouldDeleteBlock_ 的值為 True,系統就不會刪除該區塊。此方法必須在區塊拖曳結束時呼叫。
pixelsToWorkspaceUnits_(pixelCoord) protected 將座標物件從像素轉換為工作區單位,包括變動器工作區的更正功能。這個函式不會考慮不同的來源。只會縮放輸入內容的 x 和 y 值。
shouldDisconnect_(healStack) protected 是否在開始拖曳時,我們是否應中斷區塊的連線。
startDrag(currentDragDeltaXY, healStack) 開始拖曳區塊。
updateBlockAfterMove_() protected 更新在特定位置放置區塊的必要資訊。
updateCursorDuringBlockDrag_() protected 更新遊標 (也可能是垃圾桶蓋),反映拖曳區塊會立即刪除後,是否刪除。
updateToolboxStyle_(isEnd) protected 新增或移除工具箱的遊標樣式。在工具箱上放置可刪除的區塊時,遊標會變成顯示 x。