Skip to content

Instantly share code, notes, and snippets.

@elmimmo
Created March 5, 2026 15:18
Show Gist options
  • Select an option

  • Save elmimmo/a5bc7193dc353b7f8bea4161c8f637dd to your computer and use it in GitHub Desktop.

Select an option

Save elmimmo/a5bc7193dc353b7f8bea4161c8f637dd to your computer and use it in GitHub Desktop.
Adobe InDesign startup script that alerts when spot inks are not set to export as process.
//DESCRIPTION:Alert when spot inks are not set to export as process on document open.
// by Jorge Hernández Valiñani (@Estudio Fénix) + Codex (GPT-5)
#target "InDesign"
#targetengine "spotSeparationAlert"
(function () {
var LISTENER_NAME = "spotSeparationAlertListener";
var LABEL_IGNORED_INKS = "spotSeparationAlert.ignoredInks.v1";
var OPEN_PALETTES_BY_DOCID = {};
var STR_DIALOG_TITLE = "Alerta de separaciones";
var STR_DIALOG_TITLE_SEP = " - ";
var STR_DIALOG_INTRO = "Estas tintas planas generan separaciones extra. Escoge:";
var STR_COL_A = "A";
var STR_COL_B = "B";
var STR_COL_C = "C";
var STR_COL_D = "D";
var STR_ACTION_A = "A. Dejar tal cual; que genere separaciones";
var STR_ACTION_B = "B. Salida como cuatricromía en Administrador de tintas";
var STR_ACTION_C = "C. Convertir muestra a cuatricromía (pero mantener su “Modo de color”)";
var STR_ACTION_D = "D. Convertir muestra a Modo de color: CMYK";
var STR_REMEMBER = "No volver a alertar sobre estas tintas";
var STR_CANCEL = "Cancelar";
var STR_OK = "OK";
var STR_R4_DISABLED_HINT = "No disponible: el “Modo de color” de la tinta ya es CMYK.";
var STR_NO_OPEN_DOCS = "No hay documentos abiertos.";
var STR_ERROR_PREFIX = "spotSeparationAlert error: ";
var STR_ERROR_LINE_OPEN = " (line ";
var STR_ERROR_LINE_CLOSE = ")";
var UI_DARK_THRESHOLD = 0.5;
var ICON_NAMES = ["Separation", "Spot", "Process", "RGB", "CMYK", "Lab"];
var EMBEDDED_ICON_DATA = {
Separation: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%6d%49%44%41%54%18%19%63%f8%ff%ff%3f%03%32%06%82%3a%18%c6%90%23%4b%31%10%68%20%2b%44%c2%1a%78%4d%46%a6%71%3a%03%08%a2%80%b8%08%ca%2e%02%f1%71%39%23%0a%aa%80%03%ca%e7%40%d7%80%55%21%92%01%28%1a%40%40%11%2a%c0%0b%d5%84%ec%b9%28%a8%78%11%54%1d%38%14%fc%f1%85%06%92%3c%dc%64%61%74%df%43%ad%16%86%9b%0c%15%70%c1%61%2a%0c%bb%80%d4%01%00%02%83%b6%68%cc%4d%5e%49%00%00%00%00%49%45%4e%44%ae%42%60%82",
Spot: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%3c%49%44%41%54%18%19%63%60%60%60%a8%23%01%d3%49%71%11%10%4b%02%31%2f%10%2b%42%f9%38%15%2b%fe%ff%ff%9f%01%86%a1%1a%70%2a%e6%40%53%cc%8b%4f%b1%24%29%26%17%41%15%70%10%e3%e6%01%0a%67%00%48%4b%4d%10%46%28%df%9c%00%00%00%00%49%45%4e%44%ae%42%60%82",
Process: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%24%49%44%41%54%18%19%63%60%60%60%a8%23%01%43%18%ff%ff%ff%67%c0%47%c3%15%13%52%88%a4%61%d4%64%0a%4c%26%16%03%00%26%09%9f%67%97%f5%d4%89%00%00%00%00%49%45%4e%44%ae%42%60%82",
RGB: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%26%49%44%41%54%18%19%63%60%60%60%e8%21%01%33%f4%7c%b5%b1%f9%0f%c3%6e%ab%dc%e0%58%a4%f8%19%1c%8f%2a%a6%b3%62%62%31%00%db%2a%d4%40%b4%ef%ef%d2%00%00%00%00%49%45%4e%44%ae%42%60%82",
CMYK: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%59%49%44%41%54%18%d3%95%cf%b1%11%c0%20%10%03%41%35%a6%c6%08%28%88%26%cf%01%c6%3c%0c%3f%b6%03%65%7b%3f%20%49%f5%c7%54%ed%d2%10%64%2b%76%7b%b0%80%2c%28%76%03%b1%e0%53%30%e0%11%c7%20%c2%14%0b%90%54%f7%f7%9c%71%ff%0c%b6%5e%2e%df%70%2c%06%2b%de%e0%1e%4c%9c%c0%18%4c%fc%71%17%d1%b2%c9%9f%a4%fd%fc%98%00%00%00%00%49%45%4e%44%ae%42%60%82",
Lab: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%68%49%44%41%54%18%19%63%60%60%60%a8%23%01%33%d4%dd%7e%cb%f5%7f%f5%55%c9%ff%55%7b%35%ff%7b%2d%b3%fa%af%3e%a7%e1%3f%f7%ac%7b%ff%15%aa%df%ff%0f%f0%bd%f6%bf%51%7e%df%ff%c1%a6%98%24%0f%ce%64%38%f3%7f%39%c7%96%ff%87%c5%9a%ff%df%53%0d%fc%ff%d6%c5%e4%ff%c7%42%f5%ff%5f%e6%4b%fd%ff%71%96%ef%ff%d7%cf%2c%ff%07%9b%62%62%31%00%01%d4%cb%77%9e%eb%d8%0e%00%00%00%00%49%45%4e%44%ae%42%60%82"
};
var EMBEDDED_ICON_DATA_DARK = {
Separation: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%66%49%44%41%54%18%19%63%f8%ff%ff%3f%03%1a%ae%43%c2%28%72%0c%e4%2a%d6%40%53%08%c3%1a%84%4c%66%20%c6%19%51%40%5c%04%65%17%41%f9%58%15%c3%14%72%40%f9%1c%e8%1a%70%29%64%c0%a6%01%24%a0%08%15%e0%85%0a%22%7b%2e%0a%2a%0e%92%57%84%85%82%3f%81%d0%00%cb%23%9b%2c%8c%25%64%18%a0%e2%70%93%41%d8%05%87%a9%30%0c%92%67%00%00%07%2b%81%ab%0f%f9%c0%01%00%00%00%00%49%45%4e%44%ae%42%60%82",
Spot: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%3a%49%44%41%54%18%19%63%f8%ff%ff%7f%1d%b1%98%81%6e%8a%8b%80%58%12%88%79%81%58%11%ca%c7%a9%18%a4%80%01%09%2b%e2%53%cc%81%a6%98%17%9f%62%49%52%4c%2e%82%2a%e0%20%c6%cd%03%14%ce%00%95%c7%9b%cf%18%32%d3%07%00%00%00%00%49%45%4e%44%ae%42%60%82",
Process: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%21%49%44%41%54%18%95%63%f8%ff%ff%7f%1d%b1%98%01%89%c3%40%80%86%2b%26%8a%1e%35%f9%3f%a5%26%13%15%83%00%b0%57%91%83%77%5c%74%19%00%00%00%00%49%45%4e%44%ae%42%60%82",
RGB: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%27%49%44%41%54%18%57%63%f8%ff%ff%7f%0f%b1%98%01%44%7c%b5%b1%f9%0f%c3%6e%ab%dc%e0%58%a4%f8%19%1c%8f%2a%a6%b3%62%62%31%00%ad%b6%4b%d7%9f%01%cd%03%00%00%00%00%49%45%4e%44%ae%42%60%82",
CMYK: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%5a%49%44%41%54%18%d3%8d%d1%b1%0d%c0%20%10%04%c1%6b%ec%1a%23%a0%20%9a%5c%07%06%9b%37%bc%4c%70%d9%ec%0b%09%01%f5%74%02%aa%5d%1a%82%6c%c5%6e%0f%16%90%05%37%14%01%ef%82%17%6e%f0%1c%44%98%60%01%92%ea%fa%f8%1d%b6%9b%24%6c%fd%5c%ee%70%2c%06%33%fe%c0%35%18%38%81%31%e8%f8%f4%07%2f%a4%3e%41%36%b8%a4%04%74%00%00%00%00%49%45%4e%44%ae%42%60%82",
Lab: "%89%50%4e%47%0d%0a%1a%0a%00%00%00%0d%49%48%44%52%00%00%00%0b%00%00%00%0b%08%06%00%00%00%a9%ac%77%26%00%00%00%6a%49%44%41%54%18%19%63%f8%ff%ff%7f%1d%b1%98%01%44%dc%7e%cb%f5%7f%f5%55%c9%ff%55%7b%35%ff%7b%2d%b3%fa%af%3e%a7%e1%3f%f7%ac%7b%ff%15%aa%df%ff%0f%f0%bd%f6%bf%51%7e%df%ff%c1%a6%98%24%0f%ce%64%38%f3%7f%39%c7%96%ff%87%c5%9a%ff%df%53%0d%fc%ff%d6%c5%e4%ff%c7%42%f5%ff%5f%e6%4b%fd%ff%71%96%ef%ff%d7%cf%2c%ff%07%9b%62%62%3d%08%00%e3%af%5d%f3%8c%d3%13%bb%00%00%00%00%49%45%4e%44%ae%42%60%82"
};
function asArray(v) {
return v && v.length ? v : [];
}
function trim(s) {
return String(s).replace(/^\s+|\s+$/g, "");
}
function parseIgnoredNames(doc) {
var raw = "";
try {
raw = doc.extractLabel(LABEL_IGNORED_INKS) || "";
} catch (_) {}
if (!raw) return {};
var out = {};
var parts = raw.split("\n");
for (var i = 0; i < parts.length; i++) {
var n = trim(parts[i]);
if (n) out[n] = true;
}
return out;
}
function saveIgnoredNames(doc, ignoredMap) {
var names = [];
for (var k in ignoredMap) {
if (ignoredMap.hasOwnProperty(k) && ignoredMap[k]) names.push(k);
}
names.sort();
try {
doc.insertLabel(LABEL_IGNORED_INKS, names.join("\n"));
} catch (_) {}
}
function getColorByName(doc, name) {
try {
var c = doc.colors.itemByName(name);
if (c && c.isValid) return c;
} catch (_) {}
return null;
}
function getColorModeIconName(color) {
try {
if (!color || !color.isValid) return "Lab";
if (color.space === ColorSpace.RGB) return "RGB";
if (color.space === ColorSpace.CMYK) return "CMYK";
return "Lab";
} catch (_) {
return "Lab";
}
}
function clamp01(x) {
if (x < 0) return 0;
if (x > 1) return 1;
return x;
}
function hsbToRgb01(h, s, v) {
h = ((h % 360) + 360) % 360;
s = clamp01(s);
v = clamp01(v);
var c = v * s;
var hp = h / 60;
var x = c * (1 - Math.abs((hp % 2) - 1));
var r = 0, g = 0, b = 0;
if (hp < 1) { r = c; g = x; }
else if (hp < 2) { r = x; g = c; }
else if (hp < 3) { g = c; b = x; }
else if (hp < 4) { g = x; b = c; }
else if (hp < 5) { r = x; b = c; }
else { r = c; b = x; }
var m = v - c;
return [r + m, g + m, b + m];
}
function labToRgb01(L, a, b) {
function fInv(t) {
var t3 = t * t * t;
return t3 > 0.008856 ? t3 : (t - 16 / 116) / 7.787;
}
var y = (L + 16) / 116;
var x = a / 500 + y;
var z = y - b / 200;
x = 95.047 * fInv(x);
y = 100.000 * fInv(y);
z = 108.883 * fInv(z);
x /= 100;
y /= 100;
z /= 100;
var r = x * 3.2406 + y * -1.5372 + z * -0.4986;
var g = x * -0.9689 + y * 1.8758 + z * 0.0415;
var bb = x * 0.0557 + y * -0.2040 + z * 1.0570;
function gamma(u) {
return u > 0.0031308 ? 1.055 * Math.pow(u, 1 / 2.4) - 0.055 : 12.92 * u;
}
return [clamp01(gamma(r)), clamp01(gamma(g)), clamp01(gamma(bb))];
}
function cmykToRgb01(c, m, y, k) {
c = clamp01(c);
m = clamp01(m);
y = clamp01(y);
k = clamp01(k);
var r = (1 - c) * (1 - k);
var g = (1 - m) * (1 - k);
var b = (1 - y) * (1 - k);
return [r, g, b];
}
function getColorPreviewRGB01(color) {
try {
if (!color || !color.isValid) return [0.5, 0.5, 0.5];
var values = asArray(color.colorValue);
if (color.space === ColorSpace.RGB) {
return [
clamp01((values[0] || 0) / 255),
clamp01((values[1] || 0) / 255),
clamp01((values[2] || 0) / 255)
];
}
if (color.space === ColorSpace.CMYK) {
return cmykToRgb01(
(values[0] || 0) / 100,
(values[1] || 0) / 100,
(values[2] || 0) / 100,
(values[3] || 0) / 100
);
}
if (color.space === ColorSpace.LAB) {
return labToRgb01(values[0] || 0, values[1] || 0, values[2] || 0);
}
if (values.length >= 3) {
var h = values[0] || 0;
var s = (values[1] || 0) / 100;
var v = (values[2] || 0) / 100;
return hsbToRgb01(h, s, v);
}
} catch (_) {}
return [0.5, 0.5, 0.5];
}
function buildIconImageCache() {
var darkUI = false;
try {
darkUI = app.generalPreferences &&
app.generalPreferences.hasOwnProperty("uiBrightnessPreference") &&
app.generalPreferences.uiBrightnessPreference <= UI_DARK_THRESHOLD;
} catch (_) {}
var globalCacheKey = darkUI ? "__spotSeparationEmbeddedIconImagesDark" : "__spotSeparationEmbeddedIconImagesLight";
if ($.global[globalCacheKey]) {
return $.global[globalCacheKey];
}
var cache = {};
var fallback = null;
var sourceData = darkUI ? EMBEDDED_ICON_DATA_DARK : EMBEDDED_ICON_DATA;
for (var i = 0; i < ICON_NAMES.length; i++) {
var k = ICON_NAMES[i];
try {
var selected = null;
if (sourceData.hasOwnProperty(k)) {
var raw = sourceData[k];
selected = (raw && raw.indexOf("%") !== -1) ? unescape(raw) : raw;
}
try {
cache[k] = ScriptUI.newImage(selected);
} catch (_) {
cache[k] = selected;
}
} catch (_) {
cache[k] = null;
}
}
fallback = cache.Process || null;
if (fallback) {
for (var key in cache) {
if (cache.hasOwnProperty(key) && !cache[key]) {
cache[key] = fallback;
}
}
}
// Keep cache alive in the targetengine session.
$.global[globalCacheKey] = cache;
return cache;
}
function closePaletteForDocId(docId) {
var p = OPEN_PALETTES_BY_DOCID[docId];
if (p && p instanceof Window) {
try {
p.close();
} catch (_) {}
}
delete OPEN_PALETTES_BY_DOCID[docId];
}
function showPalette(doc, entries, ignoredMap) {
var iconImages = buildIconImageCache();
var docId = String(doc.id);
closePaletteForDocId(docId);
/*
Code for Import https://scriptui.joonas.me — (Triple click to select):
{"activeId":1,"items":{"item-0":{"id":0,"type":"Dialog","parentId":false,"style":{"enabled":true,"varName":null,"windowType":"Dialog","creationProps":{"su1PanelCoordinates":false,"maximizeButton":false,"minimizeButton":false,"independent":false,"closeButton":true,"borderless":false,"resizeable":false},"text":"Alerta de separaciones - Nuevo documento","preferredSize":[0,0],"margins":16,"orientation":"column","spacing":10,"alignChildren":["center","top"]}},"item-1":{"id":1,"type":"StaticText","parentId":0,"style":{"enabled":true,"varName":null,"creationProps":{"truncate":"none","multiline":false,"scrolling":false},"softWrap":false,"text":"Algunas tintas planas generan separaciones extra. Escoge:","justify":"left","preferredSize":[0,0],"alignment":"fill","helpTip":null}},"item-2":{"id":2,"type":"Checkbox","parentId":0,"style":{"enabled":true,"varName":null,"text":"No volver a alertar sobre estas tintas","preferredSize":[0,0],"alignment":"fill","helpTip":null}},"item-9":{"id":9,"type":"Group","parentId":0,"style":{"enabled":true,"varName":null,"preferredSize":[0,0],"margins":0,"orientation":"row","spacing":10,"alignChildren":["left","center"],"alignment":"fill"}},"item-10":{"id":10,"type":"StaticText","parentId":9,"style":{"enabled":true,"varName":null,"creationProps":{},"softWrap":false,"text":"A. Dejar tal cual; que genere separaciones\nB. Salida como cuatricromía en Administrador de tintas\nC. Convertir muestra a cuatricromía (pero mantener su “Modo de color”)\nD. Convertir muestra a Modo de color: CMYK","justify":"left","preferredSize":[0,0],"alignment":null,"helpTip":null}},"item-12":{"id":12,"type":"Group","parentId":24,"style":{"enabled":true,"varName":null,"preferredSize":[0,0],"margins":0,"orientation":"row","spacing":10,"alignChildren":["left","center"],"alignment":"fill"}},"item-13":{"id":13,"type":"StaticText","parentId":12,"style":{"enabled":true,"varName":null,"creationProps":{"truncate":"none","multiline":false,"scrolling":false},"softWrap":false,"text":"A","justify":"center","preferredSize":[18,0],"alignment":null,"helpTip":null}},"item-14":{"id":14,"type":"StaticText","parentId":12,"style":{"enabled":true,"varName":null,"creationProps":{"truncate":"none","multiline":false,"scrolling":false},"softWrap":false,"text":"B","justify":"center","preferredSize":[18,0],"alignment":null,"helpTip":null}},"item-15":{"id":15,"type":"StaticText","parentId":12,"style":{"enabled":true,"varName":null,"creationProps":{"truncate":"none","multiline":false,"scrolling":false},"softWrap":false,"text":"C","justify":"center","preferredSize":[18,0],"alignment":null,"helpTip":null}},"item-16":{"id":16,"type":"StaticText","parentId":12,"style":{"enabled":true,"varName":null,"creationProps":{"truncate":"none","multiline":false,"scrolling":false},"softWrap":false,"text":"D","justify":"center","preferredSize":[18,0],"alignment":null,"helpTip":null}},"item-24":{"id":24,"type":"Group","parentId":0,"style":{"enabled":true,"varName":null,"preferredSize":[0,0],"margins":0,"orientation":"column","spacing":0,"alignChildren":["left","center"],"alignment":"fill"}},"item-34":{"id":34,"type":"Group","parentId":24,"style":{"enabled":true,"varName":null,"preferredSize":[0,0],"margins":[2,0,2,0],"orientation":"row","spacing":10,"alignChildren":["left","center"],"alignment":"fill"}},"item-35":{"id":35,"type":"RadioButton","parentId":34,"style":{"enabled":true,"varName":null,"text":"","preferredSize":[18,0],"alignment":null,"helpTip":"Dejar tal cual","checked":false}},"item-36":{"id":36,"type":"RadioButton","parentId":34,"style":{"enabled":true,"varName":null,"text":"","preferredSize":[18,0],"alignment":null,"helpTip":"Tinta a cuatricomía","checked":false}},"item-37":{"id":37,"type":"RadioButton","parentId":34,"style":{"enabled":true,"varName":null,"text":"","preferredSize":[18,0],"alignment":null,"helpTip":"Muestra a cuatricomía","checked":false}},"item-38":{"id":38,"type":"RadioButton","parentId":34,"style":{"enabled":true,"varName":null,"text":"","preferredSize":[18,0],"alignment":null,"helpTip":"Muestra a CMYK","checked":true}},"item-40":{"id":40,"type":"Image","parentId":57,"style":{"enabled":true,"varName":null,"image":["data:image/png;base64,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33hag08ZolzqkGFSGjERHX4McSNEmyt4AjApi6I8AWxvL/MZLTyl2ydNG3k3LJAA7Cj2mUXJyL8187Sm/6Hvf49AVvUf438A4dEQd1l2uF0AAAAJcEhZcwAACxMAAAsTAQCanBgAAAY8aVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA5LjEtYzAwMyA3OS45NjkwYTg3ZmMsIDIwMjUvMDMvMDYtMjA6NTA6MTYgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgZXhpZjpQaXhlbFhEaW1lbnNpb249IjI4IiBleGlmOlBpeGVsWURpbWVuc2lvbj0iMjgiIGV4aWY6VXNlckNvbW1lbnQ9IlNjcmVlbnNob3QiIHhtcDpDcmVhdGVEYXRlPSIyMDI2LTAzLTA0VDE3OjIyOjE3KzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyNi0wMy0wNFQxNzoyMzo1NCswMTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyNi0wMy0wNFQxNzoyMzo1NCswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJEaXNwbGF5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjkwMmIzZWQxLWExNTItNGU5My1hNDRmLTY2NTJlMjM1NzQ0MSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpmMDU1MjA3My03NTYxLTRjZGYtYTQzZS04OTUyZmY3MzA5NzMiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpmMDU1MjA3My03NTYxLTRjZGYtYTQzZS04OTUyZmY3MzA5NzMiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpmMDU1MjA3My03NTYxLTRjZGYtYTQzZS04OTUyZmY3MzA5NzMiIHN0RXZ0OndoZW49IjIwMjYtMDMtMDRUMTc6MjI6NTArMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo5MDJiM2VkMS1hMTUyLTRlOTMtYTQ0Zi02NjUyZTIzNTc0NDEiIHN0RXZ0OndoZW49IjIwMjYtMDMtMDRUMTc6MjM6NTQrMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjB4pesAAAAbSURBVCjPYwgkDjAA8SY1H/xoVN2gVEdM/AIAr3S3lXPI30oAAAAASUVORK5CYII="],"alignment":null,"helpTip":null}},"item-41":{"id":41,"type":"StaticText","parentId":57,"style":{"enabled":true,"varName":null,"creationProps":{"truncate":"none","multiline":false,"scrolling":false},"softWrap":false,"text":"PANTONE 540 C","justify":"left","preferredSize":[100,0],"alignment":null,"helpTip":null}},"item-43":{"id":43,"type":"Image","parentId":44,"style":{"enabled":true,"varName":null,"image":["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAYAAACprHcmAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFw2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgOS4xLWMwMDMgNzkuOTY5MGE4N2ZjLCAyMDI1LzAzLzA2LTIwOjUwOjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjcuMSAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjYtMDMtMDVUMTM6MDQ6NTArMDE6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDI2LTAzLTA1VDEzOjMzOjExKzAxOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDI2LTAzLTA1VDEzOjMzOjExKzAxOjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2YWViY2IzYi02MzkxLTQ1OTAtOTFjOC0wYTliOTc2NmEyYzciIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NjIyYzQzMGEtZWI0ZS00MzlhLTk1ZjAtZTM0NjVhMTRiMWY3IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NjIyYzQzMGEtZWI0ZS00MzlhLTk1ZjAtZTM0NjVhMTRiMWY3Ij4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo2MjJjNDMwYS1lYjRlLTQzOWEtOTVmMC1lMzQ2NWExNGIxZjciIHN0RXZ0OndoZW49IjIwMjYtMDMtMDVUMTM6MDQ6NTArMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo2YWViY2IzYi02MzkxLTQ1OTAtOTFjOC0wYTliOTc2NmEyYzciIHN0RXZ0OndoZW49IjIwMjYtMDMtMDVUMTM6MzM6MTErMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvimNVsAAABaSURBVBjTjdGxDcAgEATBa+waI6AgmlwHBps3vExw2ewLCQH1dAKqXRqCbMVuDxaQBTcUAe+CF27wHESYYAGS6vr4HbabJGz9XO5wLAYz/sA1GDiBMej49AcvpD5BNrikBHQAAAAASUVORK5CYII="],"alignment":null,"helpTip":null}},"item-44":{"id":44,"type":"Group","parentId":45,"style":{"enabled":true,"varName":null,"preferredSize":[41,0],"margins":0,"orientation":"row","spacing":2,"alignChildren":["right","center"],"alignment":null}},"item-45":{"id":45,"type":"Group","parentId":34,"style":{"enabled":true,"varName":null,"preferredSize":[0,0],"margins":0,"orientation":"row","spacing":10,"alignChildren":["left","bottom"],"alignment":null}},"item-57":{"id":57,"type":"Group","parentId":45,"style":{"enabled":true,"varName":null,"preferredSize":[0,0],"margins":0,"orientation":"row","spacing":2,"alignChildren":["left","center"],"alignment":null}},"item-58":{"id":58,"type":"Image","parentId":44,"style":{"enabled":true,"varName":null,"image":["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAYAAACprHcmAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFw2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgOS4xLWMwMDMgNzkuOTY5MGE4N2ZjLCAyMDI1LzAzLzA2LTIwOjUwOjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjcuMSAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjYtMDMtMDVUMTM6MDQ6NTArMDE6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDI2LTAzLTA1VDEzOjMzOjE3KzAxOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDI2LTAzLTA1VDEzOjMzOjE3KzAxOjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDowMTU3OWExZC0yZmM1LTQ1ZDctOTkyOC00YmM1MjMwMjNlZTkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NzkzYzYyODEtZDI5Ny00ZDdlLWJmYmMtZGYzYTg5YmIxMDMyIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NzkzYzYyODEtZDI5Ny00ZDdlLWJmYmMtZGYzYTg5YmIxMDMyIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo3OTNjNjI4MS1kMjk3LTRkN2UtYmZiYy1kZjNhODliYjEwMzIiIHN0RXZ0OndoZW49IjIwMjYtMDMtMDVUMTM6MDQ6NTArMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDowMTU3OWExZC0yZmM1LTQ1ZDctOTkyOC00YmM1MjMwMjNlZTkiIHN0RXZ0OndoZW49IjIwMjYtMDMtMDVUMTM6MzM6MTcrMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjENAMoAAABmSURBVBgZY/j//z8DGq5DwihyDOQq1kBTCMMahExmIMYZUUBcBGUXQflYFcMUckD5HOgacClkwKYBJKAIFeCFCiJ7LgoqDpJXhIWCP4HQAMsjmyyMJWQYoOJwk0HYBYepMAySZwAAByuBqw/5wAEAAAAASUVORK5CYII="],"alignment":null,"helpTip":null}},"item-59":{"id":59,"type":"Image","parentId":44,"style":{"enabled":true,"varName":null,"image":["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAYAAACprHcmAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFw2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgOS4xLWMwMDMgNzkuOTY5MGE4N2ZjLCAyMDI1LzAzLzA2LTIwOjUwOjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjcuMSAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjYtMDMtMDVUMTM6MDQ6NTArMDE6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDI2LTAzLTA1VDEzOjMzOjE4KzAxOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDI2LTAzLTA1VDEzOjMzOjE4KzAxOjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5YTZhNjUwMi02NWQwLTRhYjctODYwMC1jZjlkM2YxMDUwNmQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDc3Mjc1NDktNGJjMS00NzdlLThhNjgtZWUxZGMwZWNjMDQzIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NDc3Mjc1NDktNGJjMS00NzdlLThhNjgtZWUxZGMwZWNjMDQzIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NzcyNzU0OS00YmMxLTQ3N2UtOGE2OC1lZTFkYzBlY2MwNDMiIHN0RXZ0OndoZW49IjIwMjYtMDMtMDVUMTM6MDQ6NTArMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo5YTZhNjUwMi02NWQwLTRhYjctODYwMC1jZjlkM2YxMDUwNmQiIHN0RXZ0OndoZW49IjIwMjYtMDMtMDVUMTM6MzM6MTgrMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvL8s+sAAAA6SURBVBgZY/j//38dsZiBboqLgFgSiHmBWBHKx6kYpIABCSviU8yBppgXn2JJUkwugirgIMbNAxTOAJXHm88YMtMHAAAAAElFTkSuQmCC"],"alignment":null,"helpTip":null}},"item-73":{"id":73,"type":"Group","parentId":0,"style":{"enabled":true,"varName":null,"preferredSize":[0,0],"margins":[10,0,0,0],"orientation":"row","spacing":10,"alignChildren":["right","center"],"alignment":"fill"}},"item-74":{"id":74,"type":"Button","parentId":73,"style":{"enabled":true,"varName":null,"text":"Cancelar","justify":"center","preferredSize":[90,0],"alignment":null,"helpTip":null}},"item-75":{"id":75,"type":"Button","parentId":73,"style":{"enabled":true,"varName":"ok","text":"OK","justify":"center","preferredSize":[90,0],"alignment":null,"helpTip":null}},"item-89":{"id":89,"type":"Group","parentId":24,"style":{"enabled":true,"varName":null,"preferredSize":[0,0],"margins":[2,0,2,0],"orientation":"row","spacing":10,"alignChildren":["left","center"],"alignment":"fill"}},"item-90":{"id":90,"type":"RadioButton","parentId":89,"style":{"enabled":true,"varName":null,"text":"","preferredSize":[18,0],"alignment":null,"helpTip":"Dejar tal cual","checked":false}},"item-91":{"id":91,"type":"RadioButton","parentId":89,"style":{"enabled":true,"varName":null,"text":"","preferredSize":[18,0],"alignment":null,"helpTip":"Tinta a cuatricomía","checked":false}},"item-92":{"id":92,"type":"RadioButton","parentId":89,"style":{"enabled":true,"varName":null,"text":"","preferredSize":[18,0],"alignment":null,"helpTip":"Muestra a cuatricomía","checked":false}},"item-93":{"id":93,"type":"RadioButton","parentId":89,"style":{"enabled":true,"varName":null,"text":"","preferredSize":[18,0],"alignment":null,"helpTip":"Muestra a CMYK","checked":true}},"item-94":{"id":94,"type":"Group","parentId":89,"style":{"enabled":true,"varName":null,"preferredSize":[0,0],"margins":0,"orientation":"row","spacing":10,"alignChildren":["left","bottom"],"alignment":null}},"item-95":{"id":95,"type":"Group","parentId":94,"style":{"enabled":true,"varName":null,"preferredSize":[41,0],"margins":0,"orientation":"row","spacing":2,"alignChildren":["right","center"],"alignment":null}},"item-97":{"id":97,"type":"Image","parentId":95,"style":{"enabled":true,"varName":null,"image":["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAYAAACprHcmAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFw2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgOS4xLWMwMDMgNzkuOTY5MGE4N2ZjLCAyMDI1LzAzLzA2LTIwOjUwOjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjcuMSAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjYtMDMtMDVUMTM6MDQ6NTArMDE6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDI2LTAzLTA1VDEzOjMzOjE4KzAxOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDI2LTAzLTA1VDEzOjMzOjE4KzAxOjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5YTZhNjUwMi02NWQwLTRhYjctODYwMC1jZjlkM2YxMDUwNmQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDc3Mjc1NDktNGJjMS00NzdlLThhNjgtZWUxZGMwZWNjMDQzIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NDc3Mjc1NDktNGJjMS00NzdlLThhNjgtZWUxZGMwZWNjMDQzIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NzcyNzU0OS00YmMxLTQ3N2UtOGE2OC1lZTFkYzBlY2MwNDMiIHN0RXZ0OndoZW49IjIwMjYtMDMtMDVUMTM6MDQ6NTArMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo5YTZhNjUwMi02NWQwLTRhYjctODYwMC1jZjlkM2YxMDUwNmQiIHN0RXZ0OndoZW49IjIwMjYtMDMtMDVUMTM6MzM6MTgrMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvL8s+sAAAA6SURBVBgZY/j//38dsZiBboqLgFgSiHmBWBHKx6kYpIABCSviU8yBppgXn2JJUkwugirgIMbNAxTOAJXHm88YMtMHAAAAAElFTkSuQmCC"],"alignment":null,"helpTip":null}},"item-98":{"id":98,"type":"Image","parentId":95,"style":{"enabled":true,"varName":null,"image":["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAALCAYAAACprHcmAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFw2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgOS4xLWMwMDMgNzkuOTY5MGE4N2ZjLCAyMDI1LzAzLzA2LTIwOjUwOjE2ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjcuMSAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjYtMDMtMDVUMTM6MDQ6NTArMDE6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDI2LTAzLTA1VDEzOjMzOjExKzAxOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDI2LTAzLTA1VDEzOjMzOjExKzAxOjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2YWViY2IzYi02MzkxLTQ1OTAtOTFjOC0wYTliOTc2NmEyYzciIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NjIyYzQzMGEtZWI0ZS00MzlhLTk1ZjAtZTM0NjVhMTRiMWY3IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NjIyYzQzMGEtZWI0ZS00MzlhLTk1ZjAtZTM0NjVhMTRiMWY3Ij4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo2MjJjNDMwYS1lYjRlLTQzOWEtOTVmMC1lMzQ2NWExNGIxZjciIHN0RXZ0OndoZW49IjIwMjYtMDMtMDVUMTM6MDQ6NTArMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo2YWViY2IzYi02MzkxLTQ1OTAtOTFjOC0wYTliOTc2NmEyYzciIHN0RXZ0OndoZW49IjIwMjYtMDMtMDVUMTM6MzM6MTErMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvimNVsAAABaSURBVBjTjdGxDcAgEATBa+waI6AgmlwHBps3vExw2ewLCQH1dAKqXRqCbMVuDxaQBTcUAe+CF27wHESYYAGS6vr4HbabJGz9XO5wLAYz/sA1GDiBMej49AcvpD5BNrikBHQAAAAASUVORK5CYII="],"alignment":null,"helpTip":null}},"item-99":{"id":99,"type":"Group","parentId":94,"style":{"enabled":true,"varName":null,"preferredSize":[0,0],"margins":0,"orientation":"row","spacing":2,"alignChildren":["left","bottom"],"alignment":null}},"item-100":{"id":100,"type":"Image","parentId":99,"style":{"enabled":true,"varName":null,"image":["data:image/png;base64,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33hag08ZolzqkGFSGjERHX4McSNEmyt4AjApi6I8AWxvL/MZLTyl2ydNG3k3LJAA7Cj2mUXJyL8187Sm/6Hvf49AVvUf438A4dEQd1l2uF0AAAAJcEhZcwAACxMAAAsTAQCanBgAAAY8aVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA5LjEtYzAwMyA3OS45NjkwYTg3ZmMsIDIwMjUvMDMvMDYtMjA6NTA6MTYgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgZXhpZjpQaXhlbFhEaW1lbnNpb249IjI4IiBleGlmOlBpeGVsWURpbWVuc2lvbj0iMjgiIGV4aWY6VXNlckNvbW1lbnQ9IlNjcmVlbnNob3QiIHhtcDpDcmVhdGVEYXRlPSIyMDI2LTAzLTA0VDE3OjIyOjE3KzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyNi0wMy0wNFQxNzoyMzo1NCswMTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyNi0wMy0wNFQxNzoyMzo1NCswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJEaXNwbGF5IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjkwMmIzZWQxLWExNTItNGU5My1hNDRmLTY2NTJlMjM1NzQ0MSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpmMDU1MjA3My03NTYxLTRjZGYtYTQzZS04OTUyZmY3MzA5NzMiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpmMDU1MjA3My03NTYxLTRjZGYtYTQzZS04OTUyZmY3MzA5NzMiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpmMDU1MjA3My03NTYxLTRjZGYtYTQzZS04OTUyZmY3MzA5NzMiIHN0RXZ0OndoZW49IjIwMjYtMDMtMDRUMTc6MjI6NTArMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo5MDJiM2VkMS1hMTUyLTRlOTMtYTQ0Zi02NjUyZTIzNTc0NDEiIHN0RXZ0OndoZW49IjIwMjYtMDMtMDRUMTc6MjM6NTQrMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyNy4xIChNYWNpbnRvc2gpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjB4pesAAAAbSURBVCjPYwgkDjAA8SY1H/xoVN2gVEdM/AIAr3S3lXPI30oAAAAASUVORK5CYII="],"alignment":null,"helpTip":null}},"item-101":{"id":101,"type":"StaticText","parentId":99,"style":{"enabled":true,"varName":null,"creationProps":{"truncate":"none","multiline":false,"scrolling":false},"softWrap":false,"text":"PANTONE 540 C","justify":"left","preferredSize":[100,0],"alignment":null,"helpTip":null}}},"order":[0,1,24,12,13,14,15,16,34,35,36,37,38,45,44,58,59,43,57,40,41,89,90,91,92,93,94,95,97,98,99,100,101,9,10,2,73,74,75],"settings":{"importJSON":true,"indentSize":false,"cepExport":false,"includeCSSJS":true,"showDialog":true,"functionWrapper":false,"afterEffectsDockable":false,"itemReferenceList":"None"}}
*/
var dialogTitle = STR_DIALOG_TITLE + STR_DIALOG_TITLE_SEP + doc.name;
var dlg = new Window("palette", dialogTitle, undefined, { closeButton: true });
dlg.text = dialogTitle;
dlg.orientation = "column";
dlg.alignChildren = ["fill", "top"];
dlg.spacing = 10;
dlg.margins = 16;
dlg.add("statictext", undefined, STR_DIALOG_INTRO);
var table = dlg.add("group");
table.orientation = "column";
table.alignChildren = ["fill", "top"];
table.spacing = 0;
table.margins = 0;
var header = table.add("group");
header.orientation = "row";
header.alignChildren = ["left", "center"];
header.spacing = 10;
header.margins = [0, 0, 0, 0];
var hA = header.add("statictext", undefined, STR_COL_A); hA.preferredSize.width = 18; hA.justify = "center";
var hB = header.add("statictext", undefined, STR_COL_B); hB.preferredSize.width = 18; hB.justify = "center";
var hC = header.add("statictext", undefined, STR_COL_C); hC.preferredSize.width = 18; hC.justify = "center";
var hD = header.add("statictext", undefined, STR_COL_D); hD.preferredSize.width = 18; hD.justify = "center";
var rows = [];
function applyRowVisualState(row, mode) {
// mode: 1=initial, 2=ink to process, 3=swatch to process, 4=swatch to CMYK
if (mode === 1) {
row.iA.visible = true;
row.iBSpot.visible = true;
row.iBProcess.visible = false;
row.iCInitial.visible = true;
row.iCCMYK.visible = false;
} else if (mode === 2) {
row.iA.visible = false;
row.iBSpot.visible = true;
row.iBProcess.visible = false;
row.iCInitial.visible = true;
row.iCCMYK.visible = false;
} else if (mode === 3) {
row.iA.visible = false;
row.iBSpot.visible = false;
row.iBProcess.visible = true;
row.iCInitial.visible = true;
row.iCCMYK.visible = false;
} else if (mode === 4) {
row.iA.visible = false;
row.iBSpot.visible = false;
row.iBProcess.visible = true;
row.iCInitial.visible = false;
row.iCCMYK.visible = true;
}
}
for (var i = 0; i < entries.length; i++) {
var e = entries[i];
var line = table.add("group");
line.orientation = "row";
line.alignChildren = ["left", "center"];
line.spacing = 10;
line.margins = [0, 2, 0, 2];
var r1 = line.add("radiobutton", undefined, ""); r1.preferredSize.width = 18;
var r2 = line.add("radiobutton", undefined, ""); r2.preferredSize.width = 18;
var r3 = line.add("radiobutton", undefined, ""); r3.preferredSize.width = 18;
var r4 = line.add("radiobutton", undefined, ""); r4.preferredSize.width = 18;
r1.value = true;
var iconGroup = line.add("group");
iconGroup.orientation = "row";
iconGroup.alignChildren = ["left", "center"];
iconGroup.spacing = 2;
iconGroup.margins = 0;
// Keep fixed slots so alternate icons appear to switch in-place.
var slotA = iconGroup.add("group");
slotA.orientation = "stack";
slotA.preferredSize = [11, 11];
slotA.margins = 0;
var iA = slotA.add("image", undefined, iconImages.Separation);
var slotB = iconGroup.add("group");
slotB.orientation = "stack";
slotB.preferredSize = [11, 11];
slotB.margins = 0;
var iBSpot = slotB.add("image", undefined, iconImages.Spot);
var iBProcess = slotB.add("image", undefined, iconImages.Process);
iBProcess.visible = false;
var slotC = iconGroup.add("group");
slotC.orientation = "stack";
slotC.preferredSize = [11, 11];
slotC.margins = 0;
var iCInitial = slotC.add("image", undefined, iconImages[e.colorModeIconName] || iconImages.Lab);
var iCCMYK = slotC.add("image", undefined, iconImages.CMYK);
iCCMYK.visible = false;
var chipLabelGroup = line.add("group");
chipLabelGroup.orientation = "row";
chipLabelGroup.alignChildren = ["left", "center"];
chipLabelGroup.spacing = 4; // Adjust chip<->label gap independently.
chipLabelGroup.margins = 0;
var chip = chipLabelGroup.add("panel");
chip.preferredSize = [11, 11];
chip.margins = 2;
chip.previewRGB = e.previewRGB;
chip.onDraw = function () {
var g = this.graphics;
var w = this.size[0], h = this.size[1];
var bg = g.newBrush(g.BrushType.SOLID_COLOR, this.previewRGB);
var border = g.newPen(g.PenType.SOLID_COLOR, [0.2, 0.2, 0.2, 1], 2);
g.rectPath(0, 0, w, h);
g.fillPath(bg);
g.strokePath(border);
};
var label = chipLabelGroup.add("statictext", undefined, e.name);
label.preferredSize.width = 260;
label.margins = 0;
var row = {
entry: e,
line: line,
r1: r1,
r2: r2,
r3: r3,
r4: r4,
iA: iA,
iBSpot: iBSpot,
iBProcess: iBProcess,
iCInitial: iCInitial,
iCCMYK: iCCMYK,
initialModeIcon: iconImages[e.colorModeIconName] || iconImages.Lab,
isInitiallyCMYK: e.colorModeIconName === "CMYK",
selectedMode: 1
};
if (row.isInitiallyCMYK) {
row.r4.enabled = false;
row.r4.helpTip = STR_R4_DISABLED_HINT;
}
(function (rowRef) {
rowRef.r1.onClick = function () { rowRef.selectedMode = 1; applyRowVisualState(rowRef, 1); };
rowRef.r2.onClick = function () { rowRef.selectedMode = 2; applyRowVisualState(rowRef, 2); };
rowRef.r3.onClick = function () { rowRef.selectedMode = 3; applyRowVisualState(rowRef, 3); };
rowRef.r4.onClick = function () { rowRef.selectedMode = 4; applyRowVisualState(rowRef, 4); };
})(row);
applyRowVisualState(row, 1);
rows.push(row);
}
var legendGroup = dlg.add("group");
legendGroup.orientation = "row";
legendGroup.alignChildren = ["left", "center"];
legendGroup.spacing = 10;
legendGroup.margins = [0, 0, 0, 0];
var legend = legendGroup.add("group");
legend.orientation = "column";
legend.alignChildren = ["left", "center"];
legend.spacing = 0;
legend.add("statictext", undefined, STR_ACTION_A);
legend.add("statictext", undefined, STR_ACTION_B);
legend.add("statictext", undefined, STR_ACTION_C);
legend.add("statictext", undefined, STR_ACTION_D);
var remember = dlg.add("checkbox", undefined, STR_REMEMBER);
var buttons = dlg.add("group");
buttons.orientation = "row";
buttons.alignChildren = ["right", "center"];
buttons.alignment = ["fill", "top"];
buttons.margins = [0, 10, 0, 0];
var cancelBtn = buttons.add("button", undefined, STR_CANCEL, { name: "cancel" });
cancelBtn.preferredSize.width = 90;
var okBtn = buttons.add("button", undefined, STR_OK, { name: "ok" });
okBtn.preferredSize.width = 90;
cancelBtn.onClick = function () {
try { dlg.close(); } catch (_) {}
};
okBtn.onClick = function () {
var selections = [];
for (var r = 0; r < rows.length; r++) {
selections.push({
entry: rows[r].entry,
mode: rows[r].selectedMode
});
}
if (remember.value) {
for (var i = 0; i < selections.length; i++) {
ignoredMap[selections[i].entry.name] = true;
}
saveIgnoredNames(doc, ignoredMap);
}
applyActions(doc, selections);
try { dlg.close(); } catch (_) {}
};
dlg.onClose = function () {
delete OPEN_PALETTES_BY_DOCID[docId];
};
OPEN_PALETTES_BY_DOCID[docId] = dlg;
dlg.show();
}
function applyActions(doc, selections) {
for (var i = 0; i < selections.length; i++) {
var sel = selections[i];
var mode = sel.mode;
var ink = sel.entry.ink;
var color = sel.entry.color;
if (mode === 2) {
try {
if (ink && ink.isValid && ink.isProcessInk === false) {
ink.convertToProcess = true;
}
} catch (_) {}
} else if (mode === 3) {
try {
if (color && color.isValid && color.model === ColorModel.SPOT) {
color.properties = { model: ColorModel.PROCESS };
}
} catch (_) {}
} else if (mode === 4) {
try {
if (sel.entry.colorModeIconName === "CMYK") continue;
} catch (_) {}
try {
if (color && color.isValid && color.model === ColorModel.SPOT) {
color.properties = { model: ColorModel.PROCESS, space: ColorSpace.CMYK };
}
} catch (_) {}
}
}
}
function collectProblemEntries(doc, ignoredMap) {
var entries = [];
var inks = doc.inks;
for (var i = 0; i < inks.length; i++) {
var ink = inks[i];
try {
if (!ink || !ink.isValid) continue;
if (ink.isProcessInk === true) continue;
if (ink.convertToProcess === true) continue;
var name = String(ink.name);
if (ignoredMap[name]) continue;
var color = getColorByName(doc, name);
var modeIcon = getColorModeIconName(color);
var preview = getColorPreviewRGB01(color);
entries.push({
name: name,
ink: ink,
color: color,
colorModeIconName: modeIcon,
previewRGB: preview
});
} catch (_) {}
}
return entries;
}
function handleAfterOpen(event) {
try {
var doc = event && event.target;
if (!(doc && doc.constructor && doc.constructor.name === "Document")) {
return;
}
var ignoredMap = parseIgnoredNames(doc);
var entries = collectProblemEntries(doc, ignoredMap);
if (!entries.length) return;
showPalette(doc, entries, ignoredMap);
} catch (err) {
alert(STR_ERROR_PREFIX + err + (err && err.line ? STR_ERROR_LINE_OPEN + err.line + STR_ERROR_LINE_CLOSE : ""));
}
}
// Manual entrypoint for on-demand testing from Scripts Panel.
$.global.runSpotSeparationAlertNow = function () {
try {
if (app.documents.length === 0) {
alert(STR_NO_OPEN_DOCS);
return;
}
handleAfterOpen({ target: app.activeDocument });
} catch (_) {}
};
// Remove existing listener (if any) to avoid duplicates.
try {
var old = app.eventListeners.itemByName(LISTENER_NAME);
if (old && old.isValid) old.remove();
} catch (_) {}
var listener = app.eventListeners.add("afterOpen", handleAfterOpen);
listener.name = LISTENER_NAME;
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment