diff --git a/src/kiri-mode/cam/client.js b/src/kiri-mode/cam/client.js index 9f5df5c1..63140997 100644 --- a/src/kiri-mode/cam/client.js +++ b/src/kiri-mode/cam/client.js @@ -190,6 +190,8 @@ CAM.init = function(kiri, api) { let settings = API.conf.get(); let { process, device } = settings; switch (ev.target.innerText) { + case "laser on": return func.opAddLaserOn(); + case "laser off": return func.opAddLaserOff(); case "gcode": return func.opAddGCode(); case "level": return func.opAddLevel(); case "rough": return func.opAddRough(); @@ -217,6 +219,14 @@ CAM.init = function(kiri, api) { } }; + func.opAddLaserOn = () => { + func.opAdd(popOp['laser on'].new()); + }; + + func.opAddLaserOff = () => { + func.opAdd(popOp['laser off'].new()); + }; + func.opAddGCode = () => { func.opAdd(popOp.gcode.new()); }; @@ -1249,6 +1259,14 @@ CAM.init = function(kiri, api) { UC.newButton(LANG.cf_menu, func.opFlip) ], {class:"ext-buttons f-row"}) }; + + createPopOp('laser on', { + }).inputs = { + }; + + createPopOp('laser off', { + }).inputs = { + }; }; function createPopOp(type, map) { diff --git a/src/kiri/init.js b/src/kiri/init.js index 38a6ce39..0a8bc7b5 100644 --- a/src/kiri/init.js +++ b/src/kiri/init.js @@ -269,6 +269,7 @@ gapp.register("kiri.init", [], (root, exports) => { api.conf.update(); DOC.activeElement.blur(); api.event.emit("boolean.click"); + updateLaserState(); } function onButtonClick(ev) { @@ -744,6 +745,12 @@ gapp.register("kiri.init", [], (root, exports) => { setDeviceCode(code, name); } + function updateLaserState() { + const dev = settings().device; + $('laser-on').style.display = dev.useLaser ? 'flex' : 'none'; + $('laser-off').style.display = dev.useLaser ? 'flex' : 'none'; + } + function setDeviceCode(code, devicename) { api.event.emit('device.select', {devicename, code}); try { @@ -883,6 +890,7 @@ gapp.register("kiri.init", [], (root, exports) => { platform.update_size(); platform.update_origin(); platform.update(); + updateLaserState(); // store current device name for this mode current.filter[mode] = devicename;