checkpoint internal work. # app server file wrapping, gerber import work

This commit is contained in:
Stewart Allen 2024-06-27 21:50:54 -04:00
commit d1938316e5
8 changed files with 163 additions and 7 deletions

View file

@ -12,6 +12,7 @@
// dep: kiri.selection
// use: kiri.tools
// use: kiri.pack
// use: ext.gerber
gapp.register("kiri.init", [], (root, exports) => {
const { base, kiri } = root;
@ -369,6 +370,7 @@ gapp.register("kiri.init", [], (root, exports) => {
if (evt.metaKey) {
evt.preventDefault();
api.space.save();
api.settings.sync.put();
}
break;
case 76: // 'l' for restore workspace

View file

@ -139,8 +139,16 @@ gapp.register("kiri.main", [], (root, exports) => {
is_fdm() { return MODE === MODES.FDM },
is_cam() { return MODE === MODES.CAM },
is_sla() { return MODE === MODES.SLA },
is_laser() { return MODE === MODES.LASER },
is_drag() { return MODE === MODES.DRAG },
is_wedm() { return MODE === MODES.WEDM },
is_wjet() { return MODE === MODES.WJET },
is_laser() { return MODE === MODES.LASER },
is_2d() { return
api.mode.is_drag() ||
api.mode.is_wedm() ||
api.mode.is_wjet() ||
api.mode.is_laser()
}
},
probe: {
live: "https://live.grid.space",
@ -549,7 +557,6 @@ gapp.register("kiri.main", [], (root, exports) => {
function saveWorkspace(quiet) {
api.conf.save();
api.settings.sync.put();
const newWidgets = [];
const oldWidgets = js2o(SDB.getItem('ws-widgets'), []);
api.widgets.each(function(widget) {

View file

@ -763,7 +763,8 @@ function platformLoadFiles(files, group) {
isgcode = lower.indexOf(".gcode") > 0 || lower.indexOf(".nc") > 0,
isset = lower.indexOf(".b64") > 0 || lower.indexOf(".km") > 0,
iskmz = lower.indexOf(".kmz") > 0,
isini = lower.indexOf(".ini") > 0;
isini = lower.indexOf(".ini") > 0,
isgrb = lower.indexOf(".grb");
reader.file = files[i];
reader.onloadend = function(e) {
function load_dec() {
@ -817,6 +818,12 @@ function platformLoadFiles(files, group) {
} else {
odon();
}
} else if (isgrb && api.conf.get().controller.devel) {
if (api.mode.is_cam()) {
api.event.emit('cam.parse.gerber', e.target.result);
} else {
api.alerts.show('Gerber import not availabe in this device mode');
}
} else if (is3mf) {
let odon = function(models) {
let msg = api.show.alert('Adding Objects');
@ -870,7 +877,7 @@ function platformLoadFiles(files, group) {
else if (ispng) api.image.dialog(e.target.result, e.target.file.name);
else if (isjpg) api.image.convert(e.target.result, e.target.file.name);
else if (isini) api.settings.import_prusa(e.target.result);
else api.show.alert(`Unsupported file: ${files[i].name}`);
else api.show.alert(`Unsupported file: ${reader.file.name}`);
};
if (isstl || ispng || isjpg || iskmz) {
reader.readAsArrayBuffer(reader.file);