MenuBar.java 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  1. package gui.menubar;
  2. import gui.frames.MainFrame;
  3. import gui.simulator.SimulatorDialogPane;
  4. import java.awt.FlowLayout;
  5. import java.awt.event.ActionEvent;
  6. import java.awt.event.ActionListener;
  7. import java.awt.event.KeyEvent;
  8. import java.io.IOException;
  9. import javax.swing.JMenu;
  10. import javax.swing.JMenuBar;
  11. import javax.swing.JMenuItem;
  12. import javax.swing.JOptionPane;
  13. import javax.swing.KeyStroke;
  14. import agenda.Agenda;
  15. import agenda.Database;
  16. import agenda.Io;
  17. @SuppressWarnings("serial")
  18. public class MenuBar extends JMenuBar{
  19. private MainFrame mainFrame;
  20. public MenuBar(MainFrame frame){
  21. this.mainFrame = frame;
  22. initialize();
  23. }
  24. private void initialize(){
  25. setLayout(new FlowLayout(80));
  26. JMenu fileMenu = new JMenu("File");
  27. JMenu editMenu = new JMenu("Edit");
  28. JMenu viewMenu = new JMenu("View");
  29. JMenu helpMenu = new JMenu("Help");
  30. this.add(fileMenu);
  31. this.add(editMenu);
  32. this.add(viewMenu);
  33. this.add(helpMenu);
  34. JMenuItem newAction = new JMenuItem("New");
  35. JMenuItem openAction = new JMenuItem("Open");
  36. JMenuItem exitAction = new JMenuItem("Exit");
  37. JMenuItem cutAction = new JMenuItem("Cut");
  38. JMenuItem copyAction = new JMenuItem("Copy");
  39. JMenuItem pasteAction = new JMenuItem("Paste");
  40. JMenuItem saveAction = new JMenuItem("Save");
  41. JMenuItem helpAction = new JMenuItem("Help");
  42. JMenuItem uploadAction = new JMenuItem("Upload agenda to DB");
  43. //view
  44. JMenuItem editorView = new JMenuItem("Editor");
  45. JMenuItem agendaView = new JMenuItem("Agenda");
  46. JMenuItem simulatorView = new JMenuItem("Simulator");
  47. JMenuItem tableView = new JMenuItem("Table");
  48. newAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, ActionEvent.CTRL_MASK));
  49. openAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, ActionEvent.CTRL_MASK));
  50. exitAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Q, ActionEvent.CTRL_MASK));
  51. cutAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, ActionEvent.CTRL_MASK));
  52. copyAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, ActionEvent.CTRL_MASK));
  53. pasteAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, ActionEvent.CTRL_MASK));
  54. saveAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,ActionEvent.CTRL_MASK));
  55. uploadAction.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_U,ActionEvent.CTRL_MASK));
  56. fileMenu.add(newAction);
  57. newAction.addActionListener(new ActionListener() {
  58. public void actionPerformed(ActionEvent arg0) {
  59. System.out.println("You have clicked on the new action");
  60. }
  61. });
  62. fileMenu.add(openAction);
  63. openAction.addActionListener(new ActionListener() {
  64. public void actionPerformed(ActionEvent arg0) {
  65. try {
  66. Agenda agenda= Io.readIo();
  67. if(agenda != null){
  68. mainFrame.setAgenda(agenda);
  69. System.out.println("read");
  70. }
  71. } catch (IOException e) {
  72. e.printStackTrace();
  73. }
  74. }
  75. });
  76. fileMenu.add(saveAction);
  77. saveAction.addActionListener(new ActionListener() {
  78. public void actionPerformed(ActionEvent e) {
  79. try {
  80. Io.writeIo(mainFrame.getAgenda());
  81. } catch (IOException e1) {
  82. e1.printStackTrace();
  83. }
  84. }
  85. });
  86. fileMenu.add(uploadAction);
  87. uploadAction.addActionListener(new ActionListener() {
  88. public void actionPerformed(ActionEvent arg0) {
  89. Database database = new Database();
  90. try {
  91. database.writeDatabase();
  92. } catch (Exception e) {
  93. e.printStackTrace();
  94. System.out.println("Database error");
  95. }
  96. System.out.println("You have clicked on the database action");
  97. }
  98. });
  99. fileMenu.addSeparator();
  100. fileMenu.add(exitAction);
  101. exitAction.addActionListener(new ActionListener() {
  102. public void actionPerformed(ActionEvent arg0) {
  103. System.exit(0);
  104. }
  105. });
  106. editMenu.add(cutAction);
  107. cutAction.addActionListener(new ActionListener() {
  108. public void actionPerformed(ActionEvent arg0) {
  109. System.out.println("You have clicked on the cut action");
  110. }
  111. });
  112. editMenu.add(copyAction);
  113. copyAction.addActionListener(new ActionListener() {
  114. public void actionPerformed(ActionEvent arg0) {
  115. System.out.println("You have clicked on the copy action");
  116. }
  117. });
  118. editMenu.add(pasteAction);
  119. pasteAction.addActionListener(new ActionListener() {
  120. public void actionPerformed(ActionEvent arg0) {
  121. System.out.println("You have clicked on the paste action");
  122. }
  123. });
  124. //view
  125. viewMenu.add(editorView);
  126. editorView.addActionListener(new ActionListener() {
  127. @Override
  128. public void actionPerformed(ActionEvent e) {
  129. System.out.println("Editor View");
  130. mainFrame.changeView(MainFrame.Views.EDITOR);
  131. }
  132. });
  133. viewMenu.add(simulatorView);
  134. simulatorView.addActionListener(new ActionListener() {
  135. @Override
  136. public void actionPerformed(ActionEvent e) {
  137. System.out.println("Simulator View");
  138. if(mainFrame.getLength() == 100000 ||
  139. mainFrame.getWidth() == 100000 ||
  140. mainFrame.getTerrain() == 100000){
  141. new SimulatorDialogPane(mainFrame);
  142. } else {
  143. mainFrame.changeView(MainFrame.Views.SIMULATOR);
  144. }
  145. }
  146. });
  147. viewMenu.add(agendaView);
  148. agendaView.addActionListener(new ActionListener() {
  149. @Override
  150. public void actionPerformed(ActionEvent e) {
  151. System.out.println("Agenda View");
  152. mainFrame.changeView(MainFrame.Views.AGENDA);
  153. }
  154. });
  155. viewMenu.add(tableView);
  156. tableView.addActionListener(new ActionListener() {
  157. @Override
  158. public void actionPerformed(ActionEvent e) {
  159. mainFrame.changeView(MainFrame.Views.TABLE);
  160. }
  161. });
  162. helpMenu.add(helpAction);
  163. helpAction.addActionListener(new ActionListener() {
  164. @Override
  165. public void actionPerformed(ActionEvent e) {
  166. JOptionPane.showMessageDialog(mainFrame,"Deze applicatie is gemaakt door: "
  167. + "\nJanco, Gillian, Tim, Davey en Jeroen"
  168. + "\n\nIn opdracht voor: "
  169. + "\n Ti Avans Breda"
  170. );
  171. }
  172. });
  173. }
  174. }