Hola comunidad de JMP,
Estoy creando un complemento para JMP que crea ventanas, almacena variables globales y llama a funciones. Todo funciona correctamente con una sola instancia, pero cuando el usuario ejecuta el complemento dos veces, las dos instancias comparten el mismo ámbito global y las variables comienzan a entrar en conflicto (una ventana sobrescribe el estado de la otra).
Inicialicé mi script con Names default to here(1), incluso creé mi propio espacio nuevo (ns = newspace()) y coloqué todas las variables en él, pero aún así tengo el conflicto. Conozco el concepto de espacio de nombres de ventana, pero también quiero evitar conflictos en las variables fuera de la ventana.
// Launch this script twice — second run breaks the first window
strLabel = "Instance A";
counter = 0;
win = New Window( "Test " || strLabel,
btn = Button Box( "Click me",
counter++;
btn << Set Label( strLabel || " clicked " || Char( counter ) || "x" );
)
);