/* * Scriptographer * * This file is part of Scriptographer, a Scripting Plugin for Adobe Illustrator * http://scriptographer.org/ * * Copyright (c) 2002-2010, Juerg Lehni * http://scratchdisk.com/ * * All rights reserved. See LICENSE file for details. * * File created on Jun 1, 2010. */ package com.scriptographer.ui; import java.io.File; import java.util.LinkedHashMap; import java.util.Map; import com.scriptographer.ai.Color; /** * @author lehni * */ public class Dialog { public static void alert(String title, String message) { UiFactory.getInstance().alert(title, message); } public static void alert(String message) { alert("Scriptographer", message); } public static boolean confirm(String title, String message) { return UiFactory.getInstance().confirm(title, message); } public static boolean confirm(String message) { return confirm("Scriptographer", message); } public static Map<String, Object> prompt(String title, Map<String, Object> components, Map<String, Object> values) { // Similar code as in Palette if (components == null) components = new LinkedHashMap<String, Object>(); Component[] comps = Component.getComponents(components, values); Object[] results = prompt(title, comps); Component.restoreComponentDefinitions(components); if (results != null) { if (values == null) values = new LinkedHashMap<String, Object>(); for (int i = 0; i < comps.length; i++) values.put(comps[i].getName(), results[i]); return values; } return null; } public static Map<String, Object> prompt(String title, Map<String, Object> components) { return prompt(title, components, null); } /** * @jshide */ public static Object[] prompt(String title, Component[] components) { return UiFactory.getInstance().prompt(title, components); } public static File fileOpen(String message, String[] filters, File selectedFile) { return UiFactory.getInstance().fileOpen(message, filters, selectedFile); } public static File fileOpen(String message, String[] filters) { return fileOpen(message, filters, null); } public static File fileOpen(String message) { return fileOpen(message, null, null); } public static File fileOpen() { return fileOpen(null, null, null); } public static File fileSave(String message, String[] filters, File selectedFile) { return UiFactory.getInstance().fileSave(message, filters, selectedFile); } public static File fileSave(String message, String[] filters) { return fileSave(message, filters, null); } public static File fileSave(String message) { return fileSave(message, null, null); } public static File fileSave() { return fileSave(null, null, null); } public static File chooseDirectory(String message, File selectedDir) { return UiFactory.getInstance().chooseDirectory(message, selectedDir); } public static File chooseDirectory(String message) { return chooseDirectory(message, null); } public static File chooseDirectory() { return chooseDirectory(null, null); } public static Color chooseColor(Color color) { return UiFactory.getInstance().chooseColor(color); } public static Color chooseColor() { return chooseColor(null); } }