1 /* 2 * ==================================================================== 3 * This software is subject to the terms of the Common Public License 4 * Agreement, available at the following URL: 5 * http://www.opensource.org/licenses/cpl.html . 6 * Copyright (C) 2003-2004 TONBELLER AG. 7 * All Rights Reserved. 8 * You must accept the terms of that agreement to use this software. 9 * ==================================================================== 10 * 11 * 12 */ 13 package com.tonbeller.wcf.component; 14 15 16 /** 17 * Sends events to FormListeners, e.g. 18 * if a button one component calls validate() on the <code>Form</code>, 19 * all <code>FormListeners</code> will receive this event. 20 * <p> 21 * <code>Form</code> instances may listen to each other. So (for example) 22 * expanding a node in a tree component may also validate text input 23 * in a form. 24 * <code>Form</code> may listen to each other without endless recursion, 25 * e.g. form1 may listen to form2 and form2 to form1. 26 * <p> 27 * <code>Form</code> ensures that a <code>FormListener</code> can not 28 * be registered more than once. 29 * @see FormListener 30 * 31 * @author av 32 */ 33 public interface Form extends FormListener { 34 void addFormListener(FormListener listener); 35 void removeFormListener(FormListener listener); 36 } 37