
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import java.util.*;

/**
 * Ein Applet, das mit einem anderen Applet kommuniziert
 * @author  Mark Donnermeyer
 */
public class ComApplet extends Applet implements ActionListener {
    TextArea text;
    
    public void init() {
        text = new TextArea();
        Button send = new Button("senden");
        send.addActionListener(this);
        setLayout(new BorderLayout());
        add("Center", text);
        add("South", send);
    }
    
    public void actionPerformed(ActionEvent e) {
        String newText = text.getText();
        text.setText("");
        // Alle Applets auf der Seite untersuchen. 
        Enumeration enum = getAppletContext().getApplets();
        while (enum.hasMoreElements()) {
            Object tmp = (Object)enum.nextElement();
            // Wenn das gefundene Applet das gleiche, aber
            // nicht dasselbe Applet ist, dann den Text aus
            // diesem Applet in das andere kopieren.
            if ((tmp instanceof ComApplet) && (tmp != this)) {
                ((ComApplet)tmp).setText(newText);
            }
        }
    }
    
    /**
     * Die Methode, über die der Text durch ein anderes 
     * Applet gesetzt werden kann.
     */
    public void setText(String newText) {
        text.setText(newText);
    }
}
