var outputData = new Window("dialog", windowTitle); outputData.orientation = "stack"; outputData.margins = 0; var bgImagePrefix = artDeptFolderPrefix + "Product Templates/references/"; var bgImage = outputData.add("image", undefined, File(bgImagePrefix + "Job_Output_3.00.jpg")); var stackGroup = outputData.add("group"); stackGroup.margins = [0, 48, 0, 0]; stackGroup.alignment = ["", "top"]; stackGroup.alignChildren = ["", "top"]; var textPanel = stackGroup.add("panel"); textPanel.orientation = "row"; textPanel.alignChildren = ["", "bottom"]; var staticGroup = textPanel.add("group"); staticGroup.orientation = "column"; staticGroup.alignChildren = "right"; staticGroup.spacing = 16; staticGroup.graphics.foregroundColor = staticGroup.graphics.newPen(outputData.graphics.PenType.SOLID_COLOR, [1, 1, 1], 1); staticGroup.add("statictext", undefined, "&Order Number:"); staticGroup.add("statictext", undefined, "&Ship Date:"); staticGroup.add("statictext", undefined, "&Initials:"); staticGroup.add("statictext", undefined, "Ove&rruns?"); var editGroup = textPanel.add("group"); editGroup.orientation = "column"; editGroup.alignChildren = "left"; var orderNumText = editGroup.add("edittext"); orderNumText.characters = 8; orderNumText.active = true; orderNumText.onChange = function () { if (!/\b\d{6}\b/.test(orderNumText.text) && !/\bP\d{5}\b/i.test(orderNumText.text) && orderNumText.text != "") { // If the entered text does not contain exactly 6 digits. alert("The order number does not appear to conform to a standard order number.\n Please fix and try again."); } okButton.enabled = ifFieldsFilled(); } var shipDateText = editGroup.add("edittext"); shipDateText.characters = 8; shipDateText.onChange = function () { dateValid = isDateValid(); okButton.enabled = ifFieldsFilled(); } var initialsText = editGroup.add("edittext"); initialsText.characters = 3; initialsText.onChanging = function () { okButton.enabled = ifFieldsFilled(); } initialsText.onChange = function () { okButton.enabled = ifFieldsFilled(); } var overRunsBox = editGroup.add("checkbox"); var buttonGroup = stackGroup.add("group"); buttonGroup.orientation = "column"; var okButton = buttonGroup.add("button", undefined, "OK", {name: "ok"}); okButton.enabled = ifFieldsFilled(); var cancelButton = buttonGroup.add("button", undefined, "Cancel", {name: "cancel"});