with(myLabelsColumnl){staticTexts.add((staticLabel:"Repeat Count:"}); // Пробельный элемент.
// Исключительно для отделения одной группы параметров от другой staticTexts.add();
staticTexts.addf{staticLabel:"Horizontal Offset:"}); staticTexts.add({staticLabel:"Vertical Offset:"});
// Снова пробельный элемент staticTexts.add();
staticTexts.add({staticLabel:"Rotation:"}); staticTexts.add({staticLabel:"Skew:"});
// Пробельный элемент staticTexts.add();
staticTexts.add({staticLabel:"Fill Tint:"}); staticTexts.add({staticLabel:"Stroke Tint:"});
}
// Колонка для значений параметров из первой колонки myControlsColumnl = myDialog.dialogColumns.add(); with(myControlsColumnl){
myRepeatField = integerEditboxes.add({editValue:2});
// Пробельный элемент staticTexts.add();
myXOffsetField = measurementEditboxes.add({editValue:0}) ; myYOffsetField = measurementEditboxes.add({editValue:0});
// Пробельный элемент staticTexts.add();
myRotationField =angleEditboxes.add({editValue:0}); mySkewField =angleEditboxes.add({editValue:0});
// Пробельный элемент staticTexts.add();
myFillTintField =realEditboxes.add({editValue:0}); myStrokeTintField =realEditboxes.add({editValue:0));
// Очередная колонка для значений myLabelsColumn2 = myDialog.dialogColumns.addO; with(myLabelsColumn2){ staticTexts.add(); staticTexts.add();
staticTexts.add({staticLabel:"Stroke Weight:"}); staticTexts.add({staticLabel:"Opacity:"}) ;
staticTexts.add();
staticTexts.add({staticLabel:"Horizontal Scale:"}); staticTexts.add({staticLabel:"Vertical Scale:*’));
staticTexts.add(); staticTexts.add();
staticTexts.add({staticLabel:"Proxy:"));
}
// Колонка со значениями
myControlsColumn2 = myDialog.dialogColumns.add(); with(myControlsColumn2){ staticTexts.add(); staticTexts.add();
myStrokeWeightField = measurementEditboxes.add() ; myOpacityField = realEditboxes;add({editValue:0});
staticTexts.add();
myXScaleField = realEditboxes.add({editValue:0}); myYScaleField = realEditboxes.add({editValue:0}) ; staticTexts.add(); staticTexts.add();
myProxyMenu = .dropdowns.add({stringList:myProxyList, selectedlndex:0});
}
3.3. Создание разных языковых версий
В InDesign предусмотрен механизм для создания универсальных скриптов, в которых язык интерфейса пользователя меняется в зависимости от региональных настроек операционной системы. Специальная функция localized в качестве аргумента принимает объект, содержащий необходимые языковые версии элемента интерфейса. Объектом является строка, в которой содержатся названия региональных установок в соответствии со стандартом ISO 3166
(их можно увидеть в окне выбора раскладки клавиатуры, только без прописных букв).
Например, для того чтобы создать кнопку, текст на которой будет меняться в зависимости от установленных региональных настроек, создаются три языковые версии: английская, немецкая и французская. Создается объект, имеющий свойства en, de, fr:
var btnText = { en: "Yes", de: "Ja", fr: "Oui" }