/* * $Id: SomeItemInputDialog.java,v 1.1 2004-10-05 20:51:57 jsurfer Exp $ * Copyright Narushima Hironori. All rights reserved. */ package net.sourceforge.phpeclipse.wizards.html; import org.eclipse.jface.dialogs.*; import org.eclipse.jface.dialogs.Dialog; import org.eclipse.swt.SWT; import org.eclipse.swt.events.*; import org.eclipse.swt.graphics.Point; import org.eclipse.swt.layout.*; import org.eclipse.swt.widgets.*; /** * */ public class SomeItemInputDialog extends Dialog { String dialogTitle; String[] inputMessages; IInputValidator[] validators; Text[] texts; Text error; String[] errorMsgs; String[] resultValues; public SomeItemInputDialog(Shell parentShell, String dialogTitle, String[] inputMessages, IInputValidator[] validators) { super(parentShell); if(inputMessages.length != validators.length){ throw new IllegalArgumentException("Specify validator counts and input message count is not same."); } this.dialogTitle = dialogTitle; this.inputMessages = (String[])inputMessages.clone(); this.validators = (IInputValidator[])validators.clone(); this.errorMsgs = new String[validators.length]; setShellStyle(SWT.RESIZE | getShellStyle()); } protected void configureShell(Shell newShell) { super.configureShell(newShell); newShell.setText(dialogTitle); } protected Control createDialogArea(Composite parent) { Composite base = (Composite)super.createDialogArea(parent); GridLayout gl = new GridLayout(2, false); gl.marginWidth = 4; gl.marginHeight = 6; base.setLayout(gl); texts = new Text[inputMessages.length]; for(int i=0; i