-
Notifications
You must be signed in to change notification settings - Fork 13
Expand file tree
/
Copy pathlayersAutoLock.jsx
More file actions
23 lines (19 loc) · 869 Bytes
/
layersAutoLock.jsx
File metadata and controls
23 lines (19 loc) · 869 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#targetengine session
/*
Mutation Events sample of InDesign CC. Provably, It works up to CS5.
To run in InDesign with a document that has a few layers.
This listerner will catch change selected layer, release active layer and others will be locked automatically.
*/
if (app.activeDocument..eventListeners.itemByName('autoLockLayers')!=null)
app.activeDocument.eventListeners.itemByName('autoLockLayers').remove();
var listener = app.activeDocument.addEventListener (
MutationEvent.AFTER_ATTRIBUTE_CHANGED, layersControl);
listener.name = 'autoLockLayers';
function layersControl(ev) {
for (var i=0;i<app.activeDocument.layers.length;i++){
app.activeDocument.layers[i].locked=true;
}
app.activeDocument.layers.itemByName(ev.attributeValue.name).locked = false;
}
//remove event
//app.activeDocument.eventListeners.itemByName('autoLockLayers').remove();