import javax.swing.*;
+import java.awt.event.*;
-/*
- *
- *
- * @author Andersson, Andreen, Lanneskog, Pehrson
- * @version 1
- */
-
-public class MooMenu {
+public class MooMenu extends JMenuBar implements ActionListener
+{
+
+ // empty constructor that anropar the createMooMenu in the mainmethod
+ public MooMenu()
+ {
+
+ add(createFileMenu());
+ add(createEditMenu());
+ add(createPlayBackMenu());
+ add(createTrackMenu());
+ add(createHelpMenu());
+ }
+
+/*
+ Ett något smidigare sätt, kanske.. / EP
+
+ public MooMenu() {
+ file = makeMenu("File", KeyEvent.VK_F);
+ add(file)
+ // Samma sak med de andra menyerna
+
+ file.add(makeAccItem(file, "New", KeyEvent.VK_N);
+ // Samma sak med de andra menyalternativen
+ }
+
+ private JMenu makeMenu(String name, int mnemonic) {
+ JMenu menu = new JMenu(name);
+ menu.setMnemonic(mnemonic);
+ }
+
+ private JMenuItem makeItem(JMenu menu, String name) {
+ JMenuItem item = new JMenuItem(name);
+ item.addActionListener(this);
+ menu.add(item);
+ }
+
+ private JMenuItem makeAccItem(JMenu menu, String name, int key) {
+ JMenuItem item = new JMenuItem(name);
+ item.setAccelerator(KeyStroke.getKeyStroke(key, ActionEvent.CTRL_MASK));
+ item.addActionListener(this);
+ menu.add(item);
+ }
+
+ public void actionPerformed(ActionEvent e) {
+ String command = e.getActionCommand();
+ ...
+ if(command == "Play") {
+
+ } else if (command == "Stop") {
+
+ } // Osv.
+ }
+*/
- /*
- * Creates the menus.
- */
- public MooMenu () {
+ // creates the filemenu
+ private JMenu createFileMenu()
+ {
+ file = new JMenu("File");
+ file.setMnemonic(KeyEvent.VK_F);
+
+ neww = new JMenuItem("New");
+ neww.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, ActionEvent.CTRL_MASK));
+ file.add(neww);
+ open = new JMenuItem("Open...");
+ open.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, ActionEvent.CTRL_MASK));
+ file.add(open);
+ save = new JMenuItem("Save");
+ save.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, ActionEvent.CTRL_MASK));
+ file.add(save);
+ saveas = new JMenuItem("Save as...");
+ file.add(saveas);
+ exit = new JMenuItem("Exit");
+ exit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Q, ActionEvent.CTRL_MASK));
+ file.add(exit);
+ return file;
+ }
+
+ // creates the editmenu
+ private JMenu createEditMenu()
+ {
+ edit = new JMenu("Edit");
+ edit.setMnemonic(KeyEvent.VK_E);
+
+ copy = new JMenuItem("Copy");
+ copy.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, ActionEvent.CTRL_MASK));
+ edit.add(copy);
+ cut = new JMenuItem("Cut");
+ cut.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, ActionEvent.CTRL_MASK));
+ edit.add(cut);
+ paste = new JMenuItem("Paste");
+ paste.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, ActionEvent.CTRL_MASK));
+ edit.add(paste);
+ selectall = new JMenuItem("Select All");
+ selectall.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A, ActionEvent.CTRL_MASK));
+ edit.add(selectall);
+ invertselection = new JMenuItem("Invert selection");
+ invertselection.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_I, ActionEvent.CTRL_MASK));
+ edit.add(invertselection);
+ return edit;
+ }
+
+ // creates the playbackmenu
+ private JMenu createPlayBackMenu()
+ {
+ playback = new JMenu("Playback");
+ playback.setMnemonic(KeyEvent.VK_P);
+
+ play = new JMenuItem("Play");
+ play.addActionListener(this);
+ playback.add(play);
+ pause= new JMenuItem("Pause / Resume");
+ playback.add(pause);
+ stop = new JMenuItem("Stop");
+ playback.add(stop);
+ jump = new JMenuItem("Jump...");
+ playback.add(jump);
+
+ return playback;
+ }
+ // creates the trackmenu
+ private JMenu createTrackMenu()
+ {
+ track = new JMenu("Track");
+ track.setMnemonic(KeyEvent.VK_T);
+
+ add = new JMenuItem("Add...");
+ track.add(add);
+ delete= new JMenuItem("Delete...");
+ track.add(delete);
+ copy1 = new JMenuItem("Copy...");
+ track.add(copy1);
+ move= new JMenuItem("Move...");
+ track.add(move);
+ return track;
+ }
+
+ // creates the aboutmenu
+ private JMenu createHelpMenu()
+ {
+ help = new JMenu("Help");
+ help.setMnemonic(KeyEvent.VK_H);
+
+ contents = new JMenuItem("Contents");
+ help.add(contents);
+ gettingstarted = new JMenuItem("Getting started");
+ help.add(gettingstarted);
+ about = new JMenuItem("About");
+ help.add(about);
+
+ return help;
+ }
+
+ public void actionPerformed(ActionEvent e)
+ {
+ Object ob = e.getSource();
+
+ if(ob == neww)
+ {
+
+ }
+ else if(ob == open)
+ {
+
+ }
+ else if(ob == save)
+ {
+
+ }
+ else if(ob == saveas)
+ {
+
+ }
+ else if(ob == exit)
+ {
+
+ }
+ else if(ob == copy)
+ {
+
+ }
+ else if(ob == cut)
+ {
+
+ }
+ else if(ob == paste)
+ {
+
+ }
+ else if(ob == selectall)
+ {
+
+ }
+ else if(ob == invertselection)
+ {
+
+ }
+ else if(ob == play)
+ {
+ Moosique.play();
+ JOptionPane.showMessageDialog(null,"Playing...");
+ }
+ else if(ob == pause)
+ {
+
+ }
+ else if(ob == stop)
+ {
+
+ }
+ else if(ob == jump)
+ {
+
+ }
+ else if(ob == add)
+ {
+
+ }
+ else if(ob == delete)
+ {
+
+ }
+ else if(ob == copy1)
+ {
+
+ }
+ else if(ob == move)
+ {
+
+ }
+ else if(ob == contents)
+ {
+
+ }
+ else if(ob == gettingstarted)
+ {
+
+ }
+ else if(ob == about)
+ {
+
+ }
+
}
+
+ private JMenu file;
+ private JMenu edit;
+ private JMenu playback;
+ private JMenu track;
+ private JMenu help;
+ private JMenuItem neww;
+ private JMenuItem open;
+ private JMenuItem save;
+ private JMenuItem saveas;
+ private JMenuItem exit;
+ private JMenuItem copy;
+ private JMenuItem cut;
+ private JMenuItem paste;
+ private JMenuItem selectall;
+ private JMenuItem invertselection;
+ private JMenuItem play;
+ private JMenuItem pause;
+ private JMenuItem stop;
+ private JMenuItem jump;
+ private JMenuItem add;
+ private JMenuItem delete;
+ private JMenuItem copy1;
+ private JMenuItem move;
+ private JMenuItem contents;
+ private JMenuItem gettingstarted;
+ private JMenuItem about;
}