package addBk.addressBook;

//AddressBookMenu.java


import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;


public class AddressBookMenu
    extends MenuBar
    implements ActionListener {

  Menu fileMenu =
      new Menu("File");
  MenuOpen openObject =
      new MenuOpen();
  MenuSave saveObject =
      new MenuSave();
  MenuMerge mergeCSV =
      new MenuMerge();
  MenuExport exportCSV =
      new MenuExport();
  MenuExit systemExit =
      new MenuExit();

  public void
      actionPerformed(ActionEvent e) {
    ((Runnable)
        e.getSource()).run();
  }

  AddressBookMenu() {
    fileMenu.add(openObject);
    fileMenu.add(saveObject);
    fileMenu.add(mergeCSV);
    fileMenu.add(exportCSV);
    fileMenu.add(systemExit);
    add(fileMenu);

    openObject.addActionListener(this);
    saveObject.addActionListener(this);
    mergeCSV.addActionListener(this);
    exportCSV.addActionListener(this);
    systemExit.addActionListener(this);
  }

  public class MenuOpen extends MenuItem
      implements Runnable {
    MenuOpen() {
      super("Open");
    }

    public void run() {
      System.out.println("Run Open Object");
      AddressDisplay display =
          new AddressDisplay();
      display.dbOpen();
    }
  }

  public class MenuSave extends MenuItem
      implements Runnable {
    MenuSave() {
      super("Save");
    }

    public void run() {
      System.out.println("Run Close Object");
      AddressDisplay display =
          new AddressDisplay();
      display.dbSave();
    }
  }

  public class MenuMerge extends MenuItem
      implements Runnable {
    MenuMerge() {
      super("Merge CSV");
    }

    public void run() {
      System.out.println("Run Merge CSV");
      AddressDisplay display =
          new AddressDisplay();
      display.dbMerge();
    }
  }

  public class MenuExport extends MenuItem
      implements Runnable {
    MenuExport() {
      super("Export CSV");
    }

    public void run() {
      System.out.println("Run Export CSV");
      AddressDisplay display =
          new AddressDisplay();
      display.dbExport();
    }
  }

  public class MenuExit extends MenuItem
      implements Runnable {
    MenuExit() {
      super("Exit");
    }

    public void run() {
      System.out.println("Run exit");
      System.exit(0);
    }
  }


}