Quantcast
Channel: Adobe Community: Message List
Viewing all articles
Browse latest Browse all 152999

Re: Delete all groups and layers that are switched off, even if they are locked

$
0
0

The other was round, but this should unlock all layers, after that delete hidden layers should work.

// unlock all layers;
// based on code to link layer masks by paul riggott;
// 2014, use it at your own risk;
#target "photoshop-70.032"
app.bringToFront();
if(app.documents.length != 0) {  unlockLayers();  };
////// unlock layers //////
function unlockLayers(){  var ref = new ActionReference();  ref.putEnumerated( charIDToTypeID('Dcmn'), charIDToTypeID('Ordn'), charIDToTypeID('Trgt') );  var count = executeActionGet(ref).getInteger(charIDToTypeID('NmbL')) +1;  var Names=[];  try{  activeDocument.backgroundLayer;  var i = 0; }catch(e){ var i = 1; };  for(i;i<count;i++){  if(i == 0) continue;  ref = new ActionReference();  ref.putIndex( charIDToTypeID( 'Lyr ' ), i );  var desc = executeActionGet(ref);  var layerName = desc.getString(charIDToTypeID( 'Nm  ' ));  var Id = desc.getInteger(stringIDToTypeID( 'layerID' ));  if(layerName.match(/^<\/Layer group/) ) continue;  unlockLayer (i);  }  };
////// unlock layer by index //////
function unlockLayer (idx){
selectLayerByIndex(idx, false);
try {
var desc = new ActionDescriptor();
var ref = new ActionReference();
ref.putIndex( charIDToTypeID( "Lyr " ), idx );
desc.putReference( charIDToTypeID('null'), ref );
var desc4 = new ActionDescriptor();
var desc5 = new ActionDescriptor();
var idprotectNone = stringIDToTypeID( "protectNone" );
desc5.putBoolean( idprotectNone, true );
var idlayerLocking = stringIDToTypeID( "layerLocking" );
desc4.putObject( idlayerLocking, idlayerLocking, desc5 );
desc.putObject( charIDToTypeID( "T   " ), charIDToTypeID( "Lyr " ), desc4 );
executeAction( charIDToTypeID('setd'), desc, DialogModes.NO );
} catch (e) {alert (e)};
};
// by mike hale, via paul riggott;
// http://forums.adobe.com/message/1944754#1944754
function selectLayerByIndex(index,add){
add = undefined ? add = false:add
var ref = new ActionReference();    ref.putIndex(charIDToTypeID("Lyr "), index);    var desc = new ActionDescriptor();    desc.putReference(charIDToTypeID("null"), ref );       if(add) desc.putEnumerated( stringIDToTypeID( "selectionModifier" ), stringIDToTypeID( "selectionModifierType" ), stringIDToTypeID( "addToSelection" ) );      desc.putBoolean( charIDToTypeID( "MkVs" ), false );   try{    executeAction(charIDToTypeID("slct"), desc, DialogModes.NO );
}catch(e){
alert(e.message);
}
};

Viewing all articles
Browse latest Browse all 152999

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>