From 9b47da4278923d78abecd5f533a8993905ff152b Mon Sep 17 00:00:00 2001 From: itdominator <1itdominator@gmail.com> Date: Sat, 31 Oct 2026 23:47:03 -0500 Subject: [PATCH] Moved DnD event handlers to event.js file; wired clear button up --- 1 - Blockcode/resources/js/events.js | 34 +++++++++++++++++++++++++--- 1 - Blockcode/resources/js/ui.js | 28 +++-------------------- 2 files changed, 34 insertions(+), 28 deletions(-) diff --git a/1 - Blockcode/resources/js/events.js b/1 - Blockcode/resources/js/events.js index 8faecdf..639d58d 100644 --- a/1 - Blockcode/resources/js/events.js +++ b/1 - Blockcode/resources/js/events.js @@ -1,3 +1,32 @@ +const dragStartHandler = (eve) => { + draggedElm = eve.target; + console.debug("Node: ", draggedElm); + eve.dataTransfer.setData("text", eve.target.tagName.toLowerCase()); +} + +const dragOverHandler = (eve) => { eve.preventDefault(); } + +const dragDropHandler = (eve) => { + eve.preventDefault(); + eve.stopPropagation(); + + const tagTarget = eve.currentTarget; + + if ( + eve.currentTarget.id.toLowerCase() === "header" || + eve.currentTarget.classList.contains("flex-parent") + ) { + if ( draggedElm.parentNode.id.toLowerCase() !== "menu" ) { + destroyScriptBlock(draggedElm, tagTarget); + } + + return; + } + + addBlockToScript(draggedElm, tagTarget); +} + + window.onload = (eve) => { setupMenuBlocks(); setupDragAndDrop(); @@ -5,7 +34,8 @@ window.onload = (eve) => { } clearBttn.onclick = (eve) => { - console.log("Clear"); + clearScriptNode(); + clearCanvas(); } saveBttn.onclick = (eve) => { @@ -20,5 +50,3 @@ runBttn.onclick = (eve) => { console.log("Run"); runScript(); } - - diff --git a/1 - Blockcode/resources/js/ui.js b/1 - Blockcode/resources/js/ui.js index aa860be..3a647cc 100644 --- a/1 - Blockcode/resources/js/ui.js +++ b/1 - Blockcode/resources/js/ui.js @@ -22,32 +22,10 @@ const setupDragAndDrop = () => { } } -const dragStartHandler = (eve) => { - draggedElm = eve.target; - console.debug("Node: ", draggedElm); - eve.dataTransfer.setData("text", eve.target.tagName.toLowerCase()); -} - -const dragOverHandler = (eve) => { eve.preventDefault(); } - -const dragDropHandler = (eve) => { - eve.preventDefault(); - eve.stopPropagation(); - - const tagTarget = eve.currentTarget; - - if ( - eve.currentTarget.id.toLowerCase() === "header" || - eve.currentTarget.classList.contains("flex-parent") - ) { - if ( draggedElm.parentNode.id.toLowerCase() !== "menu" ) { - destroyScriptBlock(draggedElm, tagTarget); - } - - return; +const clearScriptNode = () => { + for (const elm of script.children) { + elm.remove(); } - - addBlockToScript(draggedElm, tagTarget); } const addBlockToScript = (draggedTarget, tagTarget) => {