/* Copyright (C) 2000  Free Software Foundation

   This file is part of libgcj.

This software is copyrighted work licensed under the terms of the
Libgcj License.  Please consult the file "LIBGCJ_LICENSE" for
details.  */

package java.awt;

/* A very incomplete placeholder. */

public class FileDialog extends Dialog
{
  public FileDialog (Frame owner)
  {
    super(owner);
    // FIXME
  }
}
