Extensiones de guardado
Una extensión de guardado se ejecuta cada vez que se guarda un dibujo (Archivo › Guardar o Guardar como…), después de escribir el archivo. Recibe todo lo que se sabe del dibujo -qué es, sus notas, variables, capas, elementos y totales- y el archivo, para poder registrar el dibujo en otro sitio: en un índice de sus dibujos o en una base de datos.
Cómo declararla
onSave({
name: "Drawing index",
description: "What each drawing is, for the database.",
saved(drawing, file) {
print(`Indexed ${file.fileName}`);
return {
file: file.path,
saved: file.saved,
category: drawing.classification.category,
style: drawing.classification.style,
tags: drawing.classification.tags,
customer: drawing.notes["Customer"] ?? null,
length: drawing.variables.L,
cut: drawing.totals.lengthByLayer["Cut"] ?? 0
};
}
});
| Propiedad | Significado |
|---|---|
name, description |
Su nombre, en los mensajes, y lo que hace. |
saved(drawing, file) |
Se ejecuta cuando se ha guardado el dibujo. |
drawing es todo lo que se sabe del dibujo, tal como lo da drawingInfo(). file es el
archivo escrito:
| Propiedad | Significado |
|---|---|
path |
La ruta completa. |
name, fileName, folder |
Su nombre sin y con extensión, y la carpeta en la que está. |
format |
Su extensión, en minúsculas: "piq". |
size |
Su tamaño en bytes. |
saved |
Cuándo, en UTC: "2026-11-03T14:05:00Z". |
user, machine |
Quién lo guardó y en qué equipo. |
Lo que devuelve
Lo que devuelve saved -un objeto, una matriz, texto- se guarda como JSON con la ventana del dibujo, para que la
aplicación lo transmita; no devolver nada también es válido. Si mantiene un índice de dibujos, también se escribe allí, con
la entrada del dibujo (saveExtensions). Las extensiones están aisladas: una no
puede acceder por sí misma a una base de datos ni a un archivo. Lo que imprime con print(…) o console.log(…) se
muestra en la ventana Interactiva.
Notas
- Todas las extensiones de guardado se ejecutan en cada guardado, una tras otra. Si una falla, lo dice en la ventana Interactiva, con el archivo y la línea; el dibujo se guarda de todos modos y las demás se siguen ejecutando.
- Una extensión de guardado solo mira el dibujo: si intenta cambiarlo (
setNote,classify,line…), se detiene con un mensaje. - Archivo › Extensiones › Recargar extensiones dice cuántas extensiones de guardado se encontraron.
Véase también: Extensiones, API de dibujo, CLASSIFY, Guardado.