Blockly > กล่องเครื่องมือ

คลาสกล่องเครื่องมือ

Class for a Toolbox สร้าง DOM ของกล่องเครื่องมือ

ลายเซ็น:

export declare class Toolbox extends DeleteArea implements IAutoHideable, IKeyboardAccessible, IStyleable, IToolbox, IFocusableNode 

ขยาย: DeleteArea

การใช้งาน: IAutoHideable, IKeyboardAccessible, IStyleable, IToolbox, IFocusableNode

ผู้ผลิต

ผู้ผลิต คีย์ตัวปรับแต่ง คำอธิบาย
(constructor)(workspace) สร้างอินสแตนซ์ใหม่ของคลาส Toolbox

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ คีย์ตัวปรับแต่ง ประเภท คำอธิบาย
boundEvents_ protected browserEvents.Data[] อาร์เรย์ที่เก็บข้อมูลที่จำเป็นในการยกเลิกการเชื่อมโยงตัวแฮนเดิลเหตุการณ์ ใช้สำหรับการทิ้ง เช่น [[node, name, func], [node, name, func]]
เนื้อหา protected Map<string, IToolboxItem> แมปจากรหัสไปยังรายการกล่องเครื่องมือที่เกี่ยวข้อง
contentsDiv_ protected HTMLDivElement | null คอนเทนเนอร์ HTML สำหรับเนื้อหาของกล่องเครื่องมือ
height_ protected ตัวเลข ความสูงของกล่องเครื่องมือ
HtmlDiv HTMLDivElement | null คอนเทนเนอร์ HTML สำหรับกล่องเครื่องมือ
id สตริง รหัสที่ไม่ซ้ำกันสำหรับคอมโพเนนต์นี้ซึ่งใช้ในการลงทะเบียนกับ ComponentManager
isVisible_ protected บูลีน กล่องเครื่องมือแสดงอยู่หรือไม่
previouslySelectedItem_ protected ISelectableToolboxItem | null รายการที่เลือกก่อนหน้านี้
RTL บูลีน
selectedItem_ protected ISelectableToolboxItem | null รายการที่เลือกในปัจจุบัน
toolboxDef_ protected toolbox.ToolboxInfo
toolboxPosition toolbox.Position
width_ protected ตัวเลข ความกว้างของกล่องเครื่องมือ
workspace_

protected

readonly

WorkspaceSvg พื้นที่ทำงานที่กล่องเครื่องมือนี้อยู่

เมธอด

วิธีการ คีย์ตัวปรับแต่ง คำอธิบาย
addToolboxItem_(toolboxItem) protected เพิ่มรายการลงในกล่องเครื่องมือ
attachEvents_(container, contentsContainer) protected เพิ่ม Listener เหตุการณ์ลงใน div คอนเทนเนอร์กล่องเครื่องมือ
autoHide(onlyClosePopups) ซ่อนคอมโพเนนต์ เรียกใช้ใน WorkspaceSvg.hideChaff
canBeFocused() ดู IFocusableNode.canBeFocused
clearSelection() ยกเลิกการไฮไลต์รายการที่เลือกไว้ก่อนหน้านี้
createContainer_() protected สร้าง div คอนเทนเนอร์สำหรับกล่องเครื่องมือ
createContentsContainer_() protected สร้างคอนเทนเนอร์สำหรับเนื้อหาทั้งหมดในกล่องเครื่องมือ
createDom_(workspace) protected สร้าง DOM สำหรับกล่องเครื่องมือ
createFlyout_() protected สร้างเมนูย่อยตามเลย์เอาต์กล่องเครื่องมือ
deselectItem_(item) protected ยกเลิกการเลือกรายการที่ระบุ ทำเครื่องหมายว่าไม่ได้เลือก และอัปเดตสถานะ aria
dispose() ทิ้งกล่องเครื่องมือนี้
getClientRect() แสดงผลสี่เหลี่ยมผืนผ้าล้อมรอบของพื้นที่เป้าหมายการลากในหน่วยพิกเซลที่สัมพันธ์กับวิวพอร์ต
getFlyout() รับเมนูย่อยกล่องเครื่องมือ
getFocusableElement() ดู IFocusableNode.getFocusableElement
getFocusableTree() ดู IFocusableNode.getFocusableTree
getHeight() รับความสูงของกล่องเครื่องมือ
getNestedTrees() ดู IFocusableTree.getNestedTrees
getPreviouslySelectedItem() รับรายการที่เลือกก่อนหน้า
getRestoredFocusableNode(previousNode) ดู IFocusableTree.getRestoredFocusableNode
getRootFocusableNode() ดู IFocusableTree.getRootFocusableNode
getSelectedItem() รับรายการที่เลือก
getToolboxItemById(id) รับรายการกล่องเครื่องมือที่มีรหัสที่ระบุ
getToolboxItems() รับรายการในกล่องเครื่องมือ
getWidth() รับความกว้างของกล่องเครื่องมือ
getWorkspace() รับพื้นที่ทำงานสำหรับกล่องเครื่องมือ
init() เริ่มต้นกล่องเครื่องมือ
isHorizontal() รับว่ากล่องเครื่องมือเป็นแนวนอนหรือไม่
lookUpFocusableNode(id) ดู IFocusableTree.lookUpFocusableNode
onClick_(e) protected จัดการเหตุการณ์การคลิกเมื่อมีการคลิกกล่องเครื่องมือหรือรายการในกล่องเครื่องมือ
onDragEnter(_dragElement) แฮนเดิลเมื่อเคอร์เซอร์ที่มีบล็อกหรือบับเบิลเข้าสู่เป้าหมายการลากนี้
onDragExit(_dragElement) จัดการเมื่อเคอร์เซอร์ที่มีบล็อกหรือบับเบิลออกจากเป้าหมายการลากนี้
onDrop(_dragElement) จัดการเมื่อมีการวางบล็อกหรือบับเบิลบนคอมโพเนนต์นี้ ไม่ควรจัดการการลบที่นี่
onKeyDown_(e) protected จัดการเหตุการณ์การกดแป้นสำหรับกล่องเครื่องมือ
onNodeBlur() ดู IFocusableNode.onNodeBlur
onNodeFocus() ดู IFocusableNode.onNodeFocus
onShortcut(_shortcut) จัดการแป้นพิมพ์ลัดที่ระบุ
onTreeBlur(nextTree) ดู IFocusableTree.onTreeBlur
onTreeFocus(node, _previousTree) ดู IFocusableTree.onTreeFocus
position() จัดตำแหน่งกล่องเครื่องมือตามว่าเป็นกล่องเครื่องมือแนวนอนหรือไม่ และพื้นที่ทำงานอยู่ในโหมด RTL หรือไม่
refreshSelection() อัปเดตเนื้อหาของฟลายเอาต์โดยไม่ต้องปิด ควรใช้ในการตอบสนองต่อการเปลี่ยนแปลงในหมวดหมู่แบบไดนามิก เช่น ตัวแปรหรือขั้นตอน
renderContents_(toolboxDef) protected เพิ่มรายการทั้งหมดในกล่องเครื่องมือลงในกล่องเครื่องมือ
selectItem_(oldItem, newItem) protected เลือกรายการที่ระบุ ทำเครื่องหมายว่าเลือกแล้ว และอัปเดตสถานะ aria
selectItemByPosition(position) เลือกรายการกล่องเครื่องมือตามตำแหน่งในรายการรายการกล่องเครื่องมือ
setSelectedItem(newItem) ตั้งค่ารายการที่ระบุเป็นรายการที่เลือก ไม่มีการดำเนินการหากเลือกรายการไม่ได้
setVisible(isVisible) แสดงหรือซ่อนกล่องเครื่องมือ
shouldDeselectItem_(oldItem, newItem) protected กำหนดว่าจะยกเลิกการเลือกรายการเก่าหรือไม่
shouldSelectItem_(oldItem, newItem) protected กำหนดว่าจะเลือกรายการใหม่หรือไม่
updateCursorDeleteStyle_(addStyle) protected เพิ่มหรือนำสไตล์ CSS ของเคอร์เซอร์เหนือกล่องเครื่องมือออกโดยพิจารณาว่าควรลบบล็อกหรือบับเบิลที่อยู่เหนือกล่องเครื่องมือออกหรือไม่หากมีการวาง (โดยใช้พร็อพเพอร์ตี้ this.wouldDelete_ ภายใน)
updateFlyout_(oldItem, newItem) protected กำหนดว่าจะซ่อนหรือแสดงเมนูย่อยหรือไม่ ขึ้นอยู่กับรายการที่เลือก
updateWouldDelete_(wouldDelete) protected อัปเดตสถานะภายใน wouldDelete_
wouldDelete(element) แสดงผลว่าระบบจะลบบล็อกหรือบับเบิลที่ระบุหรือไม่หากวางในพื้นที่นี้ เมธอดนี้ควรตรวจสอบว่าลบองค์ประกอบได้หรือไม่ และจะเรียกใช้ก่อน onDragEnter/onDragOver/onDragExit เสมอ