Вот две функции для получения индекса и имени pathItem. Если путь не выбран, getPathIndex()
вернет -1, getPathName()
выдаст ошибку, обрабатывайте ее так, как хотите. Обратите внимание, что если выбрано несколько путей, функция будет работать только с последним: я не думаю, что возможно итерировать несколько выбранных путей.
function getPathIndex()
{
var ref = new ActionReference();
ref.putProperty(charIDToTypeID("Prpr"), charIDToTypeID("TrgP"));
ref.putEnumerated(charIDToTypeID("Dcmn"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));
var desc = executeActionGet(ref);
return desc.getInteger(charIDToTypeID("TrgP"));
}
function getPathName()
{
var ref = new ActionReference();
ref.putProperty(charIDToTypeID("Prpr"), charIDToTypeID("PthN"));
ref.putEnumerated(charIDToTypeID('Path'), charIDToTypeID('Ordn'), charIDToTypeID('Trgt'));
try
{
var desc = executeActionGet(ref);
}
catch (e)
{
// handle error
return '';
}
return desc.getString(charIDToTypeID("PthN"));
}