/* @(#)Methods.java  */
import edu.neu.ccs.*;
import edu.neu.ccs.gui.*;
import edu.neu.ccs.codec.*;
import edu.neu.ccs.console.*;
import edu.neu.ccs.filter.*;
import edu.neu.ccs.jpf.*;
import edu.neu.ccs.parser.*;
import edu.neu.ccs.pedagogy.*;
import edu.neu.ccs.quick.*;
import edu.neu.ccs.util.*;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.awt.font.*;
import java.awt.image.*;
import javax.swing.*;
import javax.swing.border.*;
import java.io.*;
import java.util.*;
import java.math.*;
import java.beans.*;
import java.lang.reflect.*;
import java.net.*;
import java.util.regex.*;

// import java.text.*;

public class Methods extends JPF 
{
    public static void main(String[] args) { 
        new Methods();
    }
    
    
    public void FontSampler() {
        new FontSampler();
    }
    
    
    public void PhraseMaker() {
        PhraseMaker phrasemaker = new PhraseMaker();
        frame(phrasemaker, "Phrase Maker", SOUTH);
    }
    
    
    public void TextOntoCanvas() {
        final PaintableCanvas canvas =
            new PaintableCanvas(750, 500);
        
        final PhraseMaker phrasemaker =
            new PhraseMaker();
        
        frame(canvas, "Canvas", NORTH);
        frame(phrasemaker, "Phrase Maker", SOUTH);
        
        SimpleAction dropPhraseOnCanvas =
            new SimpleAction() {
                public void perform() {
                    Paintable tp = phrasemaker.
                        getCurrentPhrase();
                    
                    MutatablePaintable mp =
                        new MutatableWrapper(tp);
                    
                    mp.move(375, 250);
                    
                    canvas.getPaintableSequence().
                        addPaintableAtTop(mp);
                    
                    canvas.repaint();
                }
        };
        
        phrasemaker.addPropertyChangeListener
            (dropPhraseOnCanvas);
    }
    
    
    public void CanvasPhrasePanel() {
        CanvasPhrasePanel panel =
            new CanvasPhrasePanel();
        
        frame(panel, "Canvas Phrase Panel", NORTH);
    }
}
