auto-increment missing tool numbers

This commit is contained in:
Stewart Allen 2022-07-05 15:38:55 -04:00
commit 4ce9f3fc76

View file

@ -95,6 +95,7 @@ CAM.init = function(kiri, api) {
}); });
api.event.on("settings.saved", (settings) => { api.event.on("settings.saved", (settings) => {
validateTools(settings.tools);
current = settings; current = settings;
let proc = settings.process; let proc = settings.process;
let hasTabs = false; let hasTabs = false;
@ -117,6 +118,7 @@ CAM.init = function(kiri, api) {
api.event.on("settings.load", (settings) => { api.event.on("settings.load", (settings) => {
func.opRender(); func.opRender();
if (!isCamMode) return; if (!isCamMode) return;
validateTools(settings.tools);
restoreTabs(api.widgets.all()); restoreTabs(api.widgets.all());
}); });
@ -1228,6 +1230,23 @@ function unselectTraces(widget, skip) {
} }
} }
function validateTools(tools) {
if (tools) {
let max = 0;
for (let t of tools) {
if (Number.isInteger(t.number)) {
max = Math.max(max, t.number);
}
}
for (let t of tools) {
if (!Number.isInteger(t.number)) {
t.number = ++max;
console.log('added tool #', t);
}
}
}
}
function addbox() { return FDM.addbox(...arguments)}; function addbox() { return FDM.addbox(...arguments)};
function delbox() { return FDM.delbox(...arguments)}; function delbox() { return FDM.delbox(...arguments)};