fix file parsing

This commit is contained in:
Stewart Allen 2022-02-19 14:13:35 -05:00
commit b45fb78c1b
3 changed files with 23 additions and 17 deletions

View file

@ -188,7 +188,7 @@ function prepareSlices(callback, scale = 1, offset = 0) {
view.update_slider_max(true); view.update_slider_max(true);
show.layer(-1, 0); show.layer(-1, 0);
if (scale === 1) { if (scale === 1) {
updateStackLabelState(); view.update_stack_labels();
} }
if (!isBelt && controller.lineType === 'line' && !process.xray) { if (!isBelt && controller.lineType === 'line' && !process.xray) {
$('render-ghost').onclick(); $('render-ghost').onclick();
@ -337,7 +337,7 @@ function preparePreview(callback, scale = 1, offset = 0) {
} else { } else {
view.update_speeds(); view.update_speeds();
} }
updateStackLabelState(); view.update_stack_labels();
let { controller, process } = settings; let { controller, process } = settings;
if (!isBelt && controller.lineType === 'line' && !process.xray) { if (!isBelt && controller.lineType === 'line' && !process.xray) {
@ -354,10 +354,12 @@ function preparePreview(callback, scale = 1, offset = 0) {
} }
function prepareAnimation() { function prepareAnimation() {
const settings = api.conf.get();
api.event.emit("function.animate", {mode: settings.mode}); api.event.emit("function.animate", {mode: settings.mode});
} }
function prepareExport() { function prepareExport() {
const settings = api.conf.get();
const argsave = arguments; const argsave = arguments;
if (!complete.preview) { if (!complete.preview) {
preparePreview(() => { prepareExport(...argsave) }); preparePreview(() => { prepareExport(...argsave) });
@ -374,12 +376,15 @@ function cancelWorker() {
} }
} }
function loadCode(code, type) { function parseCode(code, type) {
const { event, show, widgets, view } = api; const { conf, event, show, widgets, view } = api;
const { stacks } = kiri; const { stacks } = kiri;
const settings = conf.get();
event.emit("code.load", {code, type}); event.emit("code.load", {code, type});
view.set_preview(); view.set_preview();
widgets.opacity(0); widgets.opacity(0);
client.parse({code, type, settings}, progress => { client.parse({code, type, settings}, progress => {
show.progress(progress, "parsing"); show.progress(progress, "parsing");
}, (layers, maxSpeed, minSpeed) => { }, (layers, maxSpeed, minSpeed) => {
@ -390,22 +395,12 @@ function loadCode(code, type) {
view.update_slider_max(true); view.update_slider_max(true);
view.update_speeds(maxSpeed, minSpeed); view.update_speeds(maxSpeed, minSpeed);
show.slices(); show.slices();
updateStackLabelState(); view.update_stack_labels();
space.update(); space.update();
event.emit("code.loaded", {code, type}); event.emit("code.loaded", {code, type});
}); });
} }
function updateStackLabelState() {
const settings = api.conf.get();
const { stacks } = kiri;
// match label checkboxes to preference
for (let label of stacks.getLabels()) {
let check = `${settings.mode}-${api.view.get()}-${label}`;
stacks.setVisible(label, settings.labels[check] !== false);
}
}
const functions = api.function = { const functions = api.function = {
slice: prepareSlices, slice: prepareSlices,
print: preparePreview, print: preparePreview,
@ -413,7 +408,7 @@ const functions = api.function = {
animate: prepareAnimation, animate: prepareAnimation,
export: prepareExport, export: prepareExport,
cancel: cancelWorker, cancel: cancelWorker,
parse: loadCode, parse: parseCode,
clear: client.clear, clear: client.clear,
clear_progress() { complete = {} } clear_progress() { complete = {} }
}; };

View file

@ -166,6 +166,7 @@
is_arrange() { return viewMode === VIEWS.ARRANGE }, is_arrange() { return viewMode === VIEWS.ARRANGE },
is_slice() { return viewMode === VIEWS.SLICE }, is_slice() { return viewMode === VIEWS.SLICE },
is_preview() { return viewMode === VIEWS.PREVIEW }, is_preview() { return viewMode === VIEWS.PREVIEW },
update_stack_labels: updateStackLabelState,
update_slider_max: updateSliderMax, update_slider_max: updateSliderMax,
update_slider: updateSlider, update_slider: updateSlider,
update_speeds: updateSpeeds, update_speeds: updateSpeeds,
@ -177,6 +178,16 @@
work: kiri.work work: kiri.work
}); });
function updateStackLabelState() {
const settings = api.conf.get();
const { stacks } = kiri;
// match label checkboxes to preference
for (let label of stacks.getLabels()) {
let check = `${settings.mode}-${api.view.get()}-${label}`;
stacks.setVisible(label, settings.labels[check] !== false);
}
}
function setFocus(sel, point) { function setFocus(sel, point) {
if (point) { if (point) {
SPACE.platform.setCenter(point.x, point.z, point.y); SPACE.platform.setCenter(point.x, point.z, point.y);

View file

@ -716,7 +716,7 @@ function platformLoadFiles(files, group) {
} }
}); });
} else if (isgcode) { } else if (isgcode) {
loadCode(e.target.result, 'gcode'); api.function.parse(e.target.result, 'gcode');
load_dec(); load_dec();
} else if (issvg) { } else if (issvg) {
let name = e.target.file.name; let name = e.target.file.name;