if (app.documents.length > 0) {
var ref = new ActionReference();
//ref.putProperty(stringIDToTypeID("property"), stringIDToTypeID("layerEffects"));
ref.putEnumerated( charIDToTypeID("capp"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
var layerDesc = executeActionGet(ref);
var layerDesc = layerDesc.getObjectValue(stringIDToTypeID("currentToolOptions"));
layerDesc = layerDesc.getObjectValue(stringIDToTypeID("pattern"));
checkDesc2 (layerDesc);
};
//////
////// based on code by michael l hale //////
function checkDesc2 (theDesc) {
var c = theDesc.count;
var str = '';
for(var i=0;i<c;i++){ //enumerate descriptor's keys
str = str + 'Key '+i+' = '+typeIDToStringID(theDesc.getKey(i))+'/'+typeIDToCharID(theDesc.getKey(i))+': '+theDesc.getType(theDesc.getKey(i))+':'+getValues (theDesc, i)+'\n';
};
alert("desc\n\n"+str);
logInfo(str);
};
////// check //////
function getValues (theDesc, theNumber) {
var key = theDesc.getKey(theNumber);
var type = theDesc.getType(key);
switch (type) {
case DescValueType.ALIASTYPE:
return theDesc.getPath(key);
break;
case DescValueType.BOOLEANTYPE:
return theDesc.getBoolean(key);
break;
case DescValueType.CLASSTYPE:
return theDesc.getClass(key);
break;
case DescValueType.DOUBLETYPE:
return theDesc.getDouble(key);
break;
case DescValueType.ENUMERATEDTYPE:
return (typeIDToStringID(theDesc.getEnumerationValue(key))+"_"+typeIDToCharID(theDesc.getEnumerationType(key)));
break;
case DescValueType.INTEGERTYPE:
return theDesc.getInteger(key);
break;
case DescValueType.LISTTYPE:
return theDesc.getList(key);
break;
case DescValueType.OBJECTTYPE:
return (theDesc.getObjectValue(key)+"_"+typeIDToStringID(theDesc.getObjectType(key))+"_"+typeIDToCharID(theDesc.getObjectType(key)));
break;
case DescValueType.RAWTYPE:
//return theDesc.getReference(theDesc.getData(theNumber));
break;
case DescValueType.REFERENCETYPE:
return theDesc.getReference(key);
break;
case DescValueType.STRINGTYPE:
return theDesc.getString(key);
break;
case DescValueType.UNITDOUBLE:
return (theDesc.getUnitDoubleValue(key)+"_"+typeIDToStringID(theDesc.getUnitDoubleType(key))+"_"+typeIDToCharID(theDesc.getUnitDoubleType(key)));
break;
default: val = theDesc.getType(key).toString();
break;
};
};
function logInfo(Txt){
var file = new File(Folder.desktop + "/style2.txt");
file.open("w", "TEXT", "????");
file.seek(0,2);
$.os.search(/windows/i) != -1 ? file.lineFeed = 'windows' : file.lineFeed = 'macintosh';
file.writeln(Txt);
file.close();
};