Dialog scroolbar
Hi all, I have this code, which allows me to select open documents individually and selectively close them, it works well, but when I have many documents open, the selection window it creates is too long and exits the screen, how can I add a scroll setting Is the height of the window fixed? Thank you
var openDocs = app.documents.everyItem().getElements()
var selectedDocs = [];
showDialog()
function showDialog(){
var dialog = new Window("dialog", "Seleziona il file");
var checkGroup = dialog.add("group");
checkGroup.orientation = "column";
checkGroup.alignment = "left";
var checkboxes = [];
for (var i = 0; i < openDocs.length; i++) {
checkboxes[i] = checkGroup.add("checkbox", undefined, openDocs[i].name);
checkboxes[i].value = false;
}
var buttonGroup = dialog.add("group");
buttonGroup.orientation = "row";
buttonGroup.alignment = "center";
var selectAllButton = buttonGroup.add("button", undefined, "Seleziona tutto");
selectAllButton.onClick = function() {
for (var i = 0; i < checkboxes.length; i++) {
checkboxes[i].value = true;
}
}
var deselectAllButton = buttonGroup.add("button", undefined, "Deseleziona tutto");
deselectAllButton.onClick = function() {
for (var i = 0; i < checkboxes.length; i++) {
checkboxes[i].value = false;
}
}
//Button named "cancel" doesn’t need a close function
var cancelButton = buttonGroup.add("button", undefined, undefined, {name: "cancel"});
cancelButton.text = "Annulla";
var okButton = buttonGroup.add("button", undefined, "OK");
okButton.onClick = function() {
for (var i = 0; i < checkboxes.length; i++) {
if (checkboxes[i].value == true) {
$.writeln(checkboxes[i].text)
//returns the checkboxes text which can be used to get the document by name:
selectedDocs.push(app.documents.itemByName(checkboxes[i].text));
}
}
if (selectedDocs.length == 0) {
alert("Nessun documento selezionato.");
}
dialog.close();
}
dialog.show()
//after the dialog is closed run closeSelected function
closeSelected()
}
function closeSelected(){
for (var i = 0; i < selectedDocs.length; i++){
selectedDocs[i].close(SaveOptions.YES)
};
}