package view; import java.awt.Dimension; import java.awt.Graphics; import java.awt.Image; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; import controller.ReservationDialogController; import model.MemberList; public class MainWindow extends JFrame { /** * Hovedvindu for applikasjonen. * @author Gaute Svendsen og Øyvind Feed */ private static final long serialVersionUID = 1L; //JScrollPane scrollPane; //ImageIcon icon; //Image image; private MemberList list; public MainWindow() { this.list = new MemberList(); //Oppretter menyer JMenuBar menuBar = new JMenuBar(); JMenu reservationMenu = new JMenu("Reservasjon"); JMenu memberMenu = new JMenu("Medlem"); JMenu vesselMenu = new JMenu("Fartøy"); /* //Legger til bakgrunnsbilde for gøy. icon = new ImageIcon("bg.png"); JPanel panel = new JPanel() { protected void paintComponent(Graphics g) { //Viser bakgrunnsbilde i full størrelse. g.drawImage(icon.getImage(), 0, 0, null); //Skalerer bildet til ramme. Dimension d = getSize(); g.drawImage(icon.getImage(), 0, 0, d.width, d.height, null); super.paintComponent(g); } }; panel.setOpaque( false ); panel.setPreferredSize( new Dimension(100, 100) ); scrollPane = new JScrollPane( panel ); getContentPane().add( scrollPane ); */ BackgroundImage frame = new BackgroundImage(); //frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //frame.setSize(300, 300); //frame.setVisible(true); //Legger til valg på nedfallsmenyen JMenuItem addReservation = new JMenuItem("Legge til reservasjon"); JMenuItem addMember = new JMenuItem("Legge til medlem"); JMenuItem editMember = new JMenuItem("Redigere medlem"); JMenuItem addVessel = new JMenuItem("Legge til fartøy"); addMember.addActionListener(new memberClicked()); editMember.addActionListener(new editMemberClicked()); addReservation.addActionListener(new reservClicked()); addVessel.addActionListener(new vesselClicked()); //Legger til menyer for valg. menuBar.add(reservationMenu); menuBar.add(memberMenu); menuBar.add(vesselMenu); //Legger til valg på reservasjonsmenyen. reservationMenu.add(addReservation); //Legger til valg på medlemsmenyen. memberMenu.add(addMember); memberMenu.add(editMember); //Legger til valg på fartøysmenyen. vesselMenu.add(addVessel); this.setJMenuBar(menuBar); //Setter OS-spesifikk look-and-feel. Dette må gjøres i en try-catch try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());} catch (Exception e) {e.printStackTrace();} //Stiller inn tittel, størrelse og synlighet. this.setTitle("Seilforeningen Sjøsprøyt"); //For visning av bare menyene: this.setSize(240, 50); this.setSize(450, 230); this.setLocationRelativeTo( null ); //Bør kanskje ha med denne på hvert vindu men vi er ikke sikre. this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); } //Åpner vinduet for å legge til medlem. private class memberClicked implements ActionListener { public void actionPerformed(ActionEvent arg0) { new MemberWindow(); } } //Åpner vinduet for å redigere medlem. private class editMemberClicked implements ActionListener { public void actionPerformed(ActionEvent arg0) { new EditMemberWindow(); } } //Åpner vinduet for å legge til nytt fartøy. private class vesselClicked implements ActionListener { public void actionPerformed(ActionEvent arg0) { new VesselWindow(); } } //Åpner vinduet for å reservere et fartøy. private class reservClicked implements ActionListener { public void actionPerformed(ActionEvent arg0) { ReservationDialogController reservationDialogController = new ReservationDialogController(new ReservationWindow()); } } public MemberList getMemberList(){ return list; } }